C语言风格 C++风格回调函数

两个代码举例

回调函数:

  • 定义一个普通函数作为处理函数
  • 将处理函数地址注册给调用者
  • 调用者在适当的时候通过函数指针调用处理函数
//c-style
typedef void (*fooFunc1)(char*);    //定义函数指针
void handle1(char* str){  /* func body */ }
void callFunc(fooFunc1 ff){  /* func body */ }

int main(){
callFunc(handle1);
return 0;
}

--------------------------
// cpp-style
#include <functional>
void func(){  /* func body */}

int main(){
	std::function<void()> callFunc2;
	callFunc2 = func;
	callFunc2();
}
posted @ 2020-07-13 10:38  阿龙233  阅读(185)  评论(0编辑  收藏  举报