RUNTIME中的构造函数不能带参数

baobao2010 2008-05-04 09:26:02
我用RUNTIME动态生成一个对象,
在这里,我想给他传递一个参数:
AfxBeginThread(RUNTIME_CLASS(CSearialThread(m_pParam) ) );
上面的代码中,我给他传了个m_pParam,但是,结果出错,
错误如下:
H:\项目\138\chuankou_multiThread\chuankou_multiThreadDlg.cpp(196) : error C2039: 'classCSearialThread' : is not a member of '`global namespace''
请问这是为什么呢?
...全文
118 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
晨星 2008-05-04
  • 打赏
  • 举报
回复
RUNTIME_CLASS是个宏,而不是一个类,它的参数只接受类名,而不接受使用类构造出来的对象名。
wmoumou 2008-05-04
  • 打赏
  • 举报
回复
--------------------
2l, 这个版本的AfxBeginThread第一个参数是CRutimeClass*,不是类名
lz是想要线程生成的时候传进m_pParam这个东西,这个偶也不知道。worker线程可以这么干,ui线程就不知道了
不过可以在线程生成之后SendThreadMessage()过去啊
buyong 2008-05-04
  • 打赏
  • 举报
回复
你需要派生一个CWinThread的类CMyThread,AfxBeginThread(RUNTIME_CLASS(CMyThread ) ); 然后就回执行CMyThread的初始化什么的函数,你想做的事在这些函数里做

15,466

社区成员

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

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