c++中回调函数和函数指针的使用

#include "stdafx.h"
#include <iostream>
//#include <string>
using namespace std;
typedef struct {
char * from;
char * to;
char * id;
char * type;
}head;
typedef struct {
head *head_;
char * msg_;
}msg;
struct sn {
char * ne;
};
typedef void(*CALLBACK)(void *param_);
//创建需要使用回调函数的函数
void function(CALLBACK func, void *param)
{ func(param);
}
//创建和函数指针类型一致的函数
void func_hello(void *param)
{
char * d= (char*)param;
cout << d << endl;
} int main()
{
string i = "w3r4werwe";
char *ff = (char*)i.c_str();
//使用需要回调函数的函数
function(func_hello, (void*)i.c_str());
//申明函数指针
CALLBACK myfun;
//将函数地址赋值给函数指针
myfun = func_hello;
//使用函数指针调用函数
myfun((void*)i.c_str());
system("pause");
return 0;
}

  

上一篇:第三百三十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—深度优先与广度优先原理


下一篇:SqlServer——全文索引