线程无法启动?????奇怪了!!

brytison 2004-01-03 11:05:41
调用这样:AfxBeginThread((AFX_THREADPROC)BeginSearch,(LPVOID)this);

线程函数:
UINT CQueryDlg::BeginSearch(LPVOID lParam)
{
if(lParam==NULL)
return -1;

return 0;
}

抱错:error C2440: 'type cast' : cannot convert from '' to 'unsigned int (__cdecl *)(void *)'

指向AfxBeginThread那里~~~郁闷……~!!!!!啊!!!
...全文
90 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
brytison 2004-01-05
  • 打赏
  • 举报
回复
为什么必须是static函数呢???能说说吗?
alfwolf 2004-01-05
  • 打赏
  • 举报
回复
可以
但是你必须声明成static函数
cxghj 2004-01-05
  • 打赏
  • 举报
回复
线程函数不能是类的函数。
brytison 2004-01-04
  • 打赏
  • 举报
回复
搞错,应该是(AFX_THREADPROC)BeginSearch那里的问题,但我始终不知道是什么原因。。。
难道线程函数不能是类的函数吗????
brytison 2004-01-03
  • 打赏
  • 举报
回复
根据报错的,我想应该是this指针的问题,但跟踪了一下,this没有问题!~而且,确确实实this有效~~~~
brytison 2004-01-03
  • 打赏
  • 举报
回复
还是不得……~
fzd999 2004-01-03
  • 打赏
  • 举报
回复
AfxBeginThread((AFX_THREADPROC)BeginSearch,(LPVOID)this);
改成
AfxBeginThread(BeginSearch,(LPVOID)this);

15,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧