自定义函数在多线程中无法使用
【求助】自定义函数在多线程中无法使用
在aa.h文件中定义了一个
UINT Thread1(LPVOID pParam);
public:
void mcc();
在aa.cpp 中定义了一个多线程
void CMFCTDlg::mcc()
{
int a=0;
}
UINT Thread1(LPVOID pParam)
{
CEdit* pStart=(CEdit*)pParam;
...代码略
mcc(); //出错了
...
return 0;
}
但是系统提示error C2065: 'mcc' : undeclared identifier,怎么会是这样呢?我已经定义过了的呀,怎么在多线程里不能使用?求解,谢谢大家啦。
------解决方案--------------------
CMFCTDlg* pStart=(CMFCTDlg*)pParam;
...代码略
pStart->mcc();
在aa.h文件中定义了一个
UINT Thread1(LPVOID pParam);
public:
void mcc();
在aa.cpp 中定义了一个多线程
void CMFCTDlg::mcc()
{
int a=0;
}
UINT Thread1(LPVOID pParam)
{
CEdit* pStart=(CEdit*)pParam;
...代码略
mcc(); //出错了
...
return 0;
}
但是系统提示error C2065: 'mcc' : undeclared identifier,怎么会是这样呢?我已经定义过了的呀,怎么在多线程里不能使用?求解,谢谢大家啦。
------解决方案--------------------
CMFCTDlg* pStart=(CMFCTDlg*)pParam;
...代码略
pStart->mcc();