命名空间的using声明:
除了内置类型之外,c++语言还定义了一个内容丰富的抽象数据类型库。
访问库中名字的一个简单方法就是通过using。
我们用到的库函数基本上都属于命名空间std,可以通过::(作用域操作符)从左侧作用域寻找右侧名字,std::cin
意思就是使用命名空间std中的名字cin。但这种方法比较繁琐,通过使用using声明,就无需专门前缀也能使用所需的名字。
#include <iostream>
using std::cin;//声明,当我们使用cin时,从命名空间std中获取它
int main(){int i ;cin>>i;//正确cout<<i;//错误,没有using声明需要使用完整名字std::cout<<i;//正确,显式的从std中使用coutreturn 0;
}
注意:
-
每个名字都需要独立的using声明
using std::cin; using std::cout; using std::string;
-
头文件不应包含using声明
因为头文件的内容会拷贝到所有引用它的文件中去,如果头文件里有某个using声明,每个使用该头文件的文件就都会有这个声明。由于不经意间包含了一些名字,有可能引起名字冲突。