【共读Primer】14.[3.1] 命名空间 Page74
我们一直在写的std::cout
其中std就是一个命名空间 "::" 则是作用域操作符
std::cout 意思就是在命名空间std中寻找cout的定义。
使用using声明可以无需作用域操作符直接使用对应的对象
using std::cin; // 使用using声明后,就可以直接使用该对象
每个名字都需要有独立的using声明。
#include <iostream> using std::cin; using std::cout; using std::endl; int main() { int i; cin >> i; cout << i; std::cout << i; return 0; }
头文件中不应该出现using声明
因为头文件会被多处包含,如果不经意间引起了名字冲突,则可能发生以下意料之外的编译错误,很难查找。