C++编程实现各个功能顺序执行我想编个程序,将已有的一些功能组合起来:比如功能一和功能二,他们都有各自执
C++编程实现各个功能顺序执行
我想编个程序,将已有的一些功能组合起来:比如功能一和功能二,他们都有各自执行按钮一和按钮二;点按钮一执行功能一,点按钮二执行功能二。现在想点按钮一或二,再点按钮一或二,再点按钮一或二。。。。。,等我点完后点击一个执行按钮,可以执行点的功能。
请问高手,用C++可以实现吗?还是要用别的语言?请具体解答。不会的劳驾不要凑热闹,感激不尽。
[解决办法]
MFC可以实现 设置好最后执行的条件即可
[解决办法]
这种东西跟设置的条件有关跟语言没什么关系吧,如果设置良好的逻辑关系应该能实现的
[解决办法]
通常为每个控件绑定一个布尔变量,根据你的选择动态改变其值即可,然后执行与否根据这个值进行判断
[解决办法]
用C++,有很多种办法可以实现楼主的想法。
如果是1L所说的Windows平台上有按钮这样的界面的话,你可以通过sendMessage或者postMessage这样的方式,来实现。
如果不考虑界面,你可以用函数指针这样的办法来实现。
[解决办法]
给一个用函数指针模拟实现的具体例子,供参考:
#include <map>
#include <iostream>
using namespace std;
typedef void (*fptr)(int); // 定义函数指针类型fptr,fptr代表的函数没有返回值,有一个int参数。
void function1(int i)// 第一个函数
{
cout << "This is function..." << i << endl;
}
void function2(int i)// 第二个函数
{
cout << "This is function..." << i << endl;
}
void function3(int i)// 第三个函数
{
cout << "This is function3..." << i << endl;
}
int main(int argc, char* argv[])
{
int i = 0;
map<int, fptr> fmap;
fmap.insert(pair<int, fptr>(1, function1)); // 将函数function1的指针放到fmap中
fmap.insert(pair<int, fptr>(2, function2)); // 将函数function2的指针放到fmap中
fmap.insert(pair<int, fptr>(3, function3)); // 将函数function3的指针放到fmap中
do
{
// 选择需要执行的函数
cout << "Please enter which function you want to run: " << endl;
cin >> i;// 接收输入,用于指定执行那个函数
if(i < 1
[解决办法]
i >3)// 如果输入的数字不是1到3(包括1和3)之间的数字,则退出循环
{
cout << "Please select integer number between 1 and 3(inclusive)..." << endl;
break;
}
fmap.find(i)->second(i);// 通过函数指针调用指定的函数
cout << "======================" << endl;
cout << endl;
}while(true);
}
[解决办法]
使用WTL吧,很容易的,随便找个例子改一改就可以实现了。
[解决办法]
你的map用的很巧妙,但是你没明白楼主的意思
他现在是想搞成点了1、2、3之后,然后再点一个按钮,这些函数1、2、3就顺序执行的
我觉得这个不难做,控制好程序逻辑即可
------解决方案--------------------
也感觉和语言没关系
控制好业务逻辑
[解决办法]
用组合模式设计成自动状态机形式.
