/*C++类函数做回调函数*/
/*这里只做一个演示*/
#include
#include
class CFun_CallBack
{
static DWORD WINAPI cbfun(void * p);
public:
CFun_CallBack();
~CFun_CallBack();
private:
int a;//
};
DWORD WINAPI CFun_CallBack::cbfun(void* p)
{
//int a这样写是错误的,静态函数不能访问非静态成员
if (p==NULL) return 0;
((CFun_CallBack *)p)->a=100;
printf("静态函数调用非静态成员:%d\n", ((CFun_CallBack *)p)->a);
printf("线程开始运行\n");
return 0;
}
CFun_CallBack::CFun_CallBack()
{
HANDLE handle= CreateThread(NULL,0,cbfun,this,0,NULL);
CloseHandle(handle);
}
CFun_CallBack::~CFun_CallBack()
{
}
int main(char*)
{
CFun_CallBack mycb;
Sleep(10);//waiting
return 0;
}
C++类中写回调函数简例
最新推荐文章于 2023-08-28 17:33:55 发布