小弟在学习多线程编程,按着资料上的例子敲进VC++6.0后,对下句报错:
hThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadProc, NULL, 0, &threadID);
查询后发现是(LPTHREAD_START_ROUTINE)ThreadProc 参数的错误:
error C2440: 'type cast' : cannot convert from '' to 'unsigned long (__stdcall *)(void *)'
在网上查了好像也是这么写的,因此不知道是何原因了。
hThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadProc, NULL, 0, &threadID);
查询后发现是(LPTHREAD_START_ROUTINE)ThreadProc 参数的错误:
error C2440: 'type cast' : cannot convert from '' to 'unsigned long (__stdcall *)(void *)'
在网上查了好像也是这么写的,因此不知道是何原因了。
解决方案 »
- mfc 关于关闭按钮的一个问题
- 基于对话框的程序中如何响应WM_KICKIDLE
- 急!!请教一下如何自动注册ActiveX控件!!!
- 请教邮件监控的问题
- 刚学ADO,编译错误,引入库了,还需要包含什么头文件啊
- ? 请问谁要ILOG和DSG的LICENSE(临时/正式均可)请与我联系:[email protected] (westernsoft )
- 高手,请留步!!!
- 改变ListCtrl某一行的字体颜色?
- 谁能给我说一下哪有MFC中文帮助手册呢,msdn是英文的,有些看不懂!thank you
- 100分求助,请问在自己电脑上调试,串口波特率是不是不能设置为15200啊
- 为什么打开和关闭无线设备时,设备管理器中的无线设备(Intel(R) Wireless WiFi Link 5300)没有变化?
- 请教(100)
UINT ThreadProc(LPARAM lparam)
{
//your code
return 0;
}
正解。ThreadProc 应定义到类外,做为全局函数。这样。
UINT ThreadProc(LPARAM lparam)
{
//your code
return 0;
}