C++ 入门 名称空间 namespace
名称空间 namespace 是C++中一项比较新的特性,为了使组合多个厂商的不同代码简便而产生的。
举个例子,有一个函数叫 wanda(),在2个厂商已经封装好的函数中,都有wanda()这个函数,所以在程序中使用wanda()函数时编译器不知道使用哪个
使用了namespace之后 两个函数的全程就是
M公司的:Microflop::wanda()
P公司的:Piscine:wanda()。
这样,程序就可以使用名称空间来区分不同版本:
1 Microflop::wanda ("go dancing?");
2 Piscine::wanda("a fish named desire");
按照这种方式,类,函数和变量便是C++编译器的标准组件,它们都被储存在名称空间std里,仅当头文件没有.h时,情况才是如此。也就意味着,在iostream中定义的用于输入输入输出的cin,cout实际上是std::cin, std::cout。而end也是std:;endl,实际上可以写成:
std::cout<<"come and go."; std::cout<<std::endl;
不过这样比较麻烦,所以就用了using编译指令,下面一行代码表明使用std名称空间中定义的名称,所以不需要使用std::
using namespace std;
这个using指令其实是个偷懒的写法,更好的方法是只使用所需的名称:
using std::cout; using std::endl;
浙公网安备 33010602011771号