在开发大型的项目时,往往会有很多人参与协同开发,划分成各个小组负责不同的模块,模块之间相对独立。代码中会定义很多的类名、函数名、模板名,甚至一些全局变量,如果不对这些名称加以规范,很容易造成名字的冲突,因为默认情况下这些名字都是全局名字,这种情况也称之为命名空间污染。为了避免这个问题,C++标准引入了命名空间的概念,将不同模块的名字限定在各自模块的命名空间中,命名空间中的名字的作用域只在命名空间内有效,尽可能地避免名字的冲突。命名空间在C++98标准中已经引入,它的概念以及用法这里就不再赘述,现在来介绍的是现代C++标准新增的功能:内联命名空间(C++11)和嵌套命名空间(C++17),以及在C++20中的改进。
分类: 后端
-
工作不好找,简历该怎么写?
Hi,你好,我是猿java。
-
火山引擎 VeDI:剪映产品如何应用A/B测试验证新功能效果
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群
-
面试官:你说一下TCP为什么需要三次握手和四次挥手?
TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议,TCP是全双工模式,需要三次握手建立连接,四次挥手关闭连接。
-
docker构建的镜像的三种方式
- 通过容器创建
-
牛蛙!GoFrame2.7正式版的监控组件真是及时雨
声明:本文首发在同名公众号:王中阳Go,未经授权禁止转载。