MFC 关于::的问题

HDChDeskDC=::GetDC(::GetDesktopWindow());CDC*pDeskDC=CDC::FromHandle(hDeskDC);请问这两句什么... HDC hDeskDC = ::GetDC(::GetDesktopWindow());
CDC* pDeskDC = CDC::FromHandle(hDeskDC);
请问这两句什么意思,还有这里面的::代表什么意思?
c++
展开
 我来答
joychen_
2016-07-25 · TA获得超过1747个赞
知道大有可为答主
回答量:1617
采纳率:100%
帮助的人:1807万
展开全部
取得桌面窗口的 HDC, 然后使用CDC类来操作.

双冒号前面为命名空间,
1. 命名空间不出现内容的话表示引用全局命名空间.
::GetDC ::GetDesktopWindow 表示调用全局的函数(该处指SDK中的全局API)

2. 命名空间有内容, 指调用某类的成员函数或变量.
CDC::FromHandle 表示调用 CDC类的 FromHandle 成员函数.
追问
全局命名空间是什么意思?
追答
就理解成全局函数或者全局变量好了.
多人共同开发时, 难免会出现重名的全局变量或函数, 为了避免这个问题,可以使用不同的命名空间把这些变量区分开来。 都不使用命名空间的话, 就相当于大家都在使用同一个默认的全局命名空间.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式