所以有一段时间我一直在使用......
using namespace::std;
最近我意识到应该是
using namespace std;
有人可以向我解释为什么我在做什么,以及它与声明使用某个命名空间的正确方法有何不同?
答案 0 :(得分:7)
第一个版本有效,因为编译器将其视为
using namespace ::std;
// Notice space^
这只是告诉编译器在全局范围内查找名称空间std
。
左侧没有任何内容的范围运算符::
与全局范围相同。