void printHello(int n){//相应回调事件
printf("你好---%d\n", n);
}
void printBye(int n){
printf("再见---%d\n", n);
}
void caller(int n, void(*print)(int)){//相应回调事件
int sum = 0;
for (int i = 1; i <= n; ++i){
sum += i;
}
print(sum);//调用回调函数
}
#define CMD_HELLO 1
#define CMD_BYE 2
int main(void){
while (1){
cout << "请输入命令:1代表迎客, 2代表送客" << endl;
int cmd;
cin >> cmd;
switch (cmd)//触发回调关联事件
{
case CMD_HELLO:caller(1, printHello); break;//注册回调函数
case CMD_BYE:caller(2, printBye); break;//注册回调函数
default:
break;
}
}
return 0;
}
回调函数
最新推荐文章于 2022-11-21 20:50:16 发布