讲一个上课时老师给我们举的例子。可以把命名空间理解为省份,而命名里面包含函数理解为车牌上的号码。我们经常看到的车牌都是省份的简写后面跟一个字符串,例如粤B88888,粤B就是命名空间,88888就是函数名称。使用了using namespace std就是告诉编译器我下面使用的所有没带省份的车牌号码都是std的。如果你想在两个同名的不同函数,就需要告诉编译器怎么区分他们,最好的办法就是加上他们命名空间的名称,例如std::cout,这样子就能把粤B88888和京B88888区分开来。(以上车牌都是随便捏造的。)
只有头文件的编写者了解并正确地使用了 namespace,才能使 namespace 这个机制发挥作用……