error C2664: “CreateThread”: 不能将参数 3 从“DWORD (__stdcall *)(LPARAM)”转换为“LPTHREAD_START
创建线程代码如下:HANDLEhThread=CreateThread(NULL,0,RecvProc,(LPVOID)pRecvParam,0,NULL);RecvPr...
创建线程代码如下:
HANDLE hThread=CreateThread(NULL,0,RecvProc,(LPVOID)pRecvParam,0,NULL);
RecvProc 的类内声明如下:
static DWORD WINAPI RecvProc(LPARAM lpParameter);
实现如下:
DWORD WINAPI CChatroomDlg::RecvProc(LPARAM lpParameter)
{。。。。}
我上网时找了好多的这类问题,都说是种方法,一是全局函数,而是内的静态成员函数,我这里已经是静态函数了,还是报这个错误,实在是愤怒,恼火,加无助。求各位大侠们指点迷境…… 万谢万谢!!! 展开
HANDLE hThread=CreateThread(NULL,0,RecvProc,(LPVOID)pRecvParam,0,NULL);
RecvProc 的类内声明如下:
static DWORD WINAPI RecvProc(LPARAM lpParameter);
实现如下:
DWORD WINAPI CChatroomDlg::RecvProc(LPARAM lpParameter)
{。。。。}
我上网时找了好多的这类问题,都说是种方法,一是全局函数,而是内的静态成员函数,我这里已经是静态函数了,还是报这个错误,实在是愤怒,恼火,加无助。求各位大侠们指点迷境…… 万谢万谢!!! 展开
2个回答
2011-11-19
展开全部
做成全局函数可以使用,
DWORD WINAPI RecvProc(LPARAM lpParameter);
DWORD WINAPI RecvProc(LPARAM lpParameter)
{。。。。}
DWORD WINAPI RecvProc(LPARAM lpParameter);
DWORD WINAPI RecvProc(LPARAM lpParameter)
{。。。。}
追问
我知道可以,可想不通的是问什么这样不行?那样的化代码写出来很乱?有什么其他情况会导致类的静态成员不能这样被调用吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询