首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于CDialog:和:要不要加的有关问题,不加的话程序编译没有关问题,但是运行的错误中断。加上了就没有有关问题了

2012-04-07 
关于CDialog::和::要不要加的问题,不加的话程序编译没问题,但是运行的异常中断。加上了就没有问题了。C/C++

关于CDialog::和::要不要加的问题,不加的话程序编译没问题,但是运行的异常中断。加上了就没有问题了。

C/C++ code
::CloseHandle(hProcessSnap);CDialog::OnTimer(nIDEvent);

上面这两句代码,我想前面的::和CDialog::加不加无所谓吧,就删去了,编译没有问题,可是运行的程序直接异常中断。我又从新加上了,结果没有问题了。
这里面不知道::和CDialog::起了什么作用,麻烦各位大牛给解答一下

[解决办法]
::CloseHandle(hProcessSnap);
可以去掉,
CDialog::OnTimer(nIDEvent);
不可以去掉
[解决办法]
在MFC中调用API函数,最好使用::,这样的话编译器就知道你调用的是全局的API函数
[解决办法]
CDialog::OnTimer(nIDEvent);
是指定CDialog这个类的,不加的话调用是本身的OnTimer(nIDEvent);或者其他父类的的OnTimer(nIDEvent);

::CloseHandle(hProcessSnap);
::是指从全局作用域查找CloseHandle
不加是从局部作用域

热点排行