VC++中,请教高手: 帮忙解释一下 "hWnd = ::CreateWindow( ...)"这条语句.

来源:百度知道 编辑:UC知道 时间:2024/09/27 21:26:16
MSG msg;
HWND hWnd;
//注册窗口类
MyRegisterClass(hInstance);
//使用已注册的窗口类,创建主窗口
hWnd = ::CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW|WS_BORDER,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);

最不明白的是:
这里的" :: " 是什么意思??它怎么可以直接这样用??它不是用来限定为某个类域么??可这里没看见类啊??
请教RedHat_net:
你说的"本类"是怎么定义的?
还有: hWnd = ::CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW|WS_BORDER,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
这条语句是在WinMian()里出现的,没有涉及到类啊, 我应该怎么确定"本类", 或者说这里的"本类"到底是什么??

::是调用API里的函数。为全局;

同一楼,代表函数是一个 全局函数

我用的vc++6.0 虽然学的时间不长,但是楼下的说法还是第一次听到的....

我听到的这个解释
本类下的函数要直接使用的话,类名和"::"都不用加,直接用就是了
加了"::"反而代表用的函数不是本类而是全局的

::这个是属于的意思,打个比方CWINAPP是个类里面有个a()这个方法,那么你就可以在调用的时候CWINAPP::a(),你的这个代码没有前面的类名,代表就是本类的方法!所以可以省略掉了!

cknight123 说的太对了书上就是这么写的,虽然书不一定正确但我相信大部分书都这么说的话,就是真的三人成虎了!!!!
劝一下提问者多看看c++的教程而不是vc!!