名称空间

using 声明和using 编译指令

using 声明将特定的名称添加到它所属的声明区域中。

using std::cout;

将cout添加到声明区中,声明扣可以用cout<<代替 std::cout<<

int main()

{

  using std::cout;

  cout<<"a";

  std::cin.get();

}

using声明使一个名称可用,而using 编译指令使所有的名称都可以用。

using namespace std;

int main()

{

  cout<<"aa";

  cin.get();

}

名称空间使用原则:

1.使用已命名的名称空间中声明的变量,而不是使用外部全局变量

2.使用已命名的名称空间中声明的变量,而不是使用静态全局变量

3.如果开发了一个函数库或类库,将其放在一个名称空间中。事实上,c++当前提倡将标准函数库

   放在名称空间std中,这种做法扩展到了来自c语言中的函数。

4.仅将编译指令using作为一种将旧代码转换为使用名称空间的权宜之计

5.不要在头文件中使用using编译指令。首先,这样做掩盖了要让哪些名称可用;另外,包含头文件的顺序可能

   影响程序的行为。如果非要使用编译指令using,应将其放在所有预处理器编译指令#include之后

6.导入名称时,首选使用作用域解析运算符或using 声明方法

7.对于using 声明,首选将其作用域设置为局部而不是全局

原文地址:https://www.cnblogs.com/li-peng/p/3489665.html