首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++编程实现各个功能顺序执行解决办法

2012-02-27 
C++编程实现各个功能顺序执行我想编个程序,将已有的一些功能组合起来:比如功能一和功能二,他们都有各自执

C++编程实现各个功能顺序执行
我想编个程序,将已有的一些功能组合起来:比如功能一和功能二,他们都有各自执行按钮一和按钮二;点按钮一执行功能一,点按钮二执行功能二。现在想点按钮一或二,再点按钮一或二,再点按钮一或二。。。。。,等我点完后点击一个执行按钮,可以执行点的功能。
请问高手,用C++可以实现吗?还是要用别的语言?请具体解答。不会的劳驾不要凑热闹,感激不尽。

[解决办法]
MFC可以实现 设置好最后执行的条件即可
[解决办法]
这种东西跟设置的条件有关跟语言没什么关系吧,如果设置良好的逻辑关系应该能实现的
[解决办法]
通常为每个控件绑定一个布尔变量,根据你的选择动态改变其值即可,然后执行与否根据这个值进行判断
[解决办法]
用C++,有很多种办法可以实现楼主的想法。
如果是1L所说的Windows平台上有按钮这样的界面的话,你可以通过sendMessage或者postMessage这样的方式,来实现。

如果不考虑界面,你可以用函数指针这样的办法来实现。
[解决办法]
给一个用函数指针模拟实现的具体例子,供参考:

C/C++ code
#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吧,很容易的,随便找个例子改一改就可以实现了。
[解决办法]
探讨
给一个用函数指针模拟实现的具体例子,供参考:

C/C++ code

#include <map>
#include <iostream>
using namespace std;

typedef void (*fptr)(int); // 定义函数指针类型fptr,fptr代表的函数没有返回值,有一个int参数。

void function1(int i) ……

[解决办法]
也感觉和语言没关系
控制好业务逻辑
[解决办法]
用组合模式设计成自动状态机形式.

热点排行