C++知识回顾(二)——名称空间

  随着工程的增大,名称相互冲突的肯能性增加,使用多个厂商的类库时,可能导致名称冲突。为了解决这些问题,需要用到名称空间。

  为了将代码加入名称空间,可以使用namespae将其包含,例如,编写一段代码,其中包含一个名为myFunction()的函数:

1 namespace mySpace

2 {

3      void muFunction();   

4 }

  名称空间可以是全局的,也可以位于另一个名称空间中,但是不能在代码块中。默认状态下,名称空间声明的名称链接性为外部的。除了用户定义名称空间外,另一种名称空间为全局名称空间。对应于文件级的声明区域。

  名称空间也可以实现方法或函数:

1 #include <iostream>

2 

3 namespace mySpace

4 {

5     void myFunction()

6     {

7         std::cout << "my namespace, my function!" << std::endl;

8     }

9 }

  为了使用自己定义名称空间中的myFunction(),可以用::(作用域解析操作符):

  1 mySpace::myFunction(); 

  为了使程序中的所有代码都可以使用mySpace中的myFunction()可以using指令预先指明名称空间:

1 #include <iostream>

2 using namespace mySpace;

3 

4 int main()

5 {

6     myFuction();

7     return 0;   

8 }

 可以在一个源文件中包含多个using指令,快速,高效,但绝对不可以过度使用。防止再次出现名称冲突。

 

你可能感兴趣的:(C++)