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 声明,首选将其作用域设置为局部而不是全局