命名空间的由来
在C++开发过程中,大型程序往往会使用多个独立开发的库,这些库又会定义大量的全局名字,如类,函数和模板等。当应用程序用到多个供应商提供的库时,不可避免地会发生某些名字相互冲突的情况。...多个库将名字放置在全局命名空间中将引发命名空间污染(namespace pollution)。...通过在某个命名空间中定义库的名字,库的作者(以及用户)可以避免全局名字固有的限制。...命名空间可以定义在几个不同的部分,同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中:
命名空间使用的三种方式
加命名空间名称及作用域限定符
这种命名空间的使用方式是仅在使用某个变量的时候去找到它存在的命名空间然后将它单独展开使用...这种命名空间的使用方式是在全局范围将命名空间中的某个成员引入,此时,该变量在工程中就相当于一个全局变量,此时在整个工程中就可以直接使用该成员了.