
为什么在DWORD WINAPI里使用不到外部函数
如这样,为什么??听说是this指针不同voidCMyWindow1Dlg::myUpdate(void){UpdateData(false);}DWORDWINAPIT...
如这样,为什么??听说是this指针不同
void CMyWindow1Dlg::myUpdate(void)
{
UpdateData(false);
}
DWORD WINAPI ThreadProc(LPVOID lpParameter)
{
myUpdate();
}
C++ 展开
void CMyWindow1Dlg::myUpdate(void)
{
UpdateData(false);
}
DWORD WINAPI ThreadProc(LPVOID lpParameter)
{
myUpdate();
}
C++ 展开
1个回答
展开全部
myUpdate不是外部函数,而是一个class的成员函数,跟普通的函数不一样的,使用成员函数必须带class的实例的,像下面这样调用才行:
CMyWindow1Dlg mywin;
mywin.myUpdate();
CMyWindow1Dlg mywin;
mywin.myUpdate();
追问
他们在同一个代码页面呢,怎么调用不到,例如 有一个按钮单击事件,都是可以调用啊
void CMyWindow1Dlg::OnBnClickedButton6()
{
// TODO: 在此添加控件通知处理程序代码
myUpdate();
}
void CMyWindow1Dlg::myUpdate(void)
{
UpdateData(false);
}
追答
OnBnClickedButton6能直接调用的原因是它也是CMyWindow1Dlg类的成员函数,你没发现它和myUpdate都有一个特点吗,前面都有CMyWindow1Dlg::。可是ThreadProc函数跟它们不一样啊,它的前面没有CMyWindow1Dlg::

2024-04-12 广告
**ODU重载连接器**ODU重载连接器是一种高性能、高密度的连接解决方案,广泛应用于各种工业自动化和通信设备中。它采用先进的设计理念和制造技术,具有优异的电气性能和机械强度,能够满足复杂环境下对数据传输和信号稳定的高要求。同时,ODU重载...
点击进入详情页
本回答由上海莘默提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询