windows线程函数必须为全局函数或者静态函数(转)

调用CreateThread(...)创建线程时要指定所创建线程的入口函数,此入口函数只能是全局函数或者类的静态成员函数。

全局函数很容易理解,但如果是类的成员函数则必须是静态成员函数,为何,

因为类的非静态成员函数只能通过类的对象去调用,但是创建线程时从哪里能获得类的对象而去调用类的成员函数呢?

类的静态成员函数类所有,不专属于类的任何一个对象,所以不创建类的对象也可以调用。

全局函数格式:
DWORD WINAPI ProcName(LPVOID lpPara){
}
类的静态函数格式:

static DWORD WINAPI ProcName(LPVOID lpPara);
————————————————
版权声明:本文为CSDN博主「威少mvp」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/djb100316878/article/details/45133877

猜你喜欢

转载自www.cnblogs.com/Stephen-Qin/p/11575356.html
今日推荐