C++ 命名空间
1. 定义命名空间
命令空间是C++提供的一种解决符号名字冲突的方法。
一个命令空间是一个作用域,在不同命令空间中命名相同的符号代表不同的实体。
通常,利用定义命令空间的办法,可以使模块划分更加方便,减少模块间的相互影响。
命令空间使用方法如下:

命令空间成员可以包含全局变量、函数、类型、名字空间
eg.

2. 命名空间成员使用
(1) 通过作用域限定运算符 "::"
命名空间名::要访问的成员
(2) 命名空间指令
using namespace 名字空间名;
在这条指令以后的代码中,指定的名字中的成员都可见,访问其中的成员可以省略作用域限
定。

(3) 命名空间声明
using 命名空间名::命名空间成员;
将命名空间中特定成员引入当前作用域,在该作用域中访问这个成员如同访问自己的成员一样,可以省略作用域限定。

3. 匿名命名空间
不属于任何命名空间的标示符(全局变量、函数、类型..),将被编译器放到无名命名空间中。
访问无名命名空间成员的方法:
::标示符
4. 命名空间嵌套
命名空间可以嵌套,可以在一个命名空间中定义另一个命名空间。
