首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >写"::namespace::identifier“和"namespace::identifier”有什么区别?

写"::namespace::identifier“和"namespace::identifier”有什么区别?
EN

Stack Overflow用户
提问于 2011-11-27 09:57:20
回答 1查看 249关注 0票数 4

我在代码中看到了这两种方法。你能解释一下这两者之间的区别吗?因为我认为这与C++完成名称空间查找的方式有关,您能提供一些关于这方面的信息,或者提供一个好的文档的链接吗?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-27 10:04:46

这真的无关紧要,至少大多数时候不是。

::identifier1::identifier2格式中,前面的冒号表示查看identifier1的全局作用域,然后在该作用域中查找identifier2

identifier1::identifier2格式中,我们改为查看identifier1的当前作用域。如果我们没有找到它,那么会搜索父作用域,依此类推,直到我们找到它。然后,我们在刚刚找到的任何范围内搜索identifier2

如果您已经在全局作用域中,这将无关紧要。但是,当您在一个名称空间或其中嵌套了其他名称空间或类的类中工作时,情况就会发生变化。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8283079

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档