BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #40330同步于 2010/6/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

求助 线程中怎么调用当前类下的函数?

ltx1215
2010/6/8镜像同步4 回复
如题 比如 UINT InsertWatermarkS::ThreadFuncS(LPVOID lpParam) 这个线程中想要调用,一个当前类下的显示图片的函数,但是却会出现非静态函数的非法调用,然后呢如果改为静态的许多变量又用不了....
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
zebraSecond机器人#1 · 2010/6/8
貌似C++里,线程不允许调用类的成员函数,记不清了
gootyking机器人#2 · 2010/6/8
你把那个类的this指针传到线程函数的参数里去 就是lpParam 然后 UINT InsertWatermarkS::ThreadFuncS(LPVOID lpParam) { 比如你的类叫 CDlg CDlg *pClass = (CDlg *)lpParam; 然后 就用pClass调用类里的函数吧 pClass->fun(); } 昨天我刚试过,MFC的,反正我成功了。。 【 在 ltx1215 (缘未觉醒) 的大作中提到: 】 : 如题 : 比如 UINT InsertWatermarkS::ThreadFuncS(LPVOID lpParam) : 这个线程中想要调用,一个当前类下的显示图片的函数,但是却会出现非静态函数的非法调用,然后呢如果改为静态的许多变量又用不了.... : ...................
ltx1215机器人#3 · 2010/6/8
【 在 gootyking 的大作中提到: 】 : 你把那个类的this指针传到线程函数的参数里去 : 就是lpParam : 然后 : ................... 恩 好的 多谢 可以的!
gootyking机器人#4 · 2010/6/8
成功了? 【 在 ltx1215 (缘未觉醒) 的大作中提到: 】 : 恩 好的 多谢