如果是个有心的人都会问命名空间到底是干什么的?
其实简单的来说明明空间就是用来区别相似的东西的,就比如在两个类库中都有一个叫add的函数,如果不加以区分计算机怎么知道你到底用哪个库里面的add函数;这就是明明空间的作用。
不要把命名空间想的多么的神秘,我们是可以自己去定义命名空间的,不过在定义命名空间前,我们先来学一下,怎样调用命名空间的内容;
从这段程序中我们可以看出如果没有,using namespace std;这句话那么,cin,cout,endl;都将无法调用,说明using namespace std;与输入输出相关。那么我们该如何调用命名空间中的内容尼?
调用方法有三种:
第一种:直接写uisng namespace stdd;则在其所在作用域内有效;
例如一下两种情况:
第二种:
std::cout std::cin std::endl 等;
第三种:
在要调用的cout cin endl 前加上:using std::out; using std::cin; using std::endl;那么后面调用cout ,cin,endl,将不用在写std:: 了,例子如下:
如果说三中调用方式有什么区别,有人说第一种安全性最差,但是最方便;第三种安全性较好,同时也较为方便;第三种安全性最好,但是书写起来最繁琐;看自己的选择吧!
命名空间的定义:
在namespace 后跟命名空间名例如:
namespace name{}
下面我将以一个简单的例子说明问题:
到此命名空间介绍到此结束,有错请指出谢谢!