欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

命名空间

程序员文章站 2022-05-17 16:46:19
如果是个有心的人都会问命名空间到底是干什么的? 其实简单的来说明明空间就是用来区别相似的东西的,就比如在两个类库中都有一个叫add的函数,如果不加以区分计算机怎么知道你到底用哪个库里面的add函数;这就是明明空间的作用。 不要把命名空间想的多么的神秘,我们是可以自己去定义命名空间的,不过在定义命名空 ......

 命名空间

 

如果是个有心的人都会问命名空间到底是干什么的?

 

其实简单的来说明明空间就是用来区别相似的东西的,就比如在两个类库中都有一个叫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{}

下面我将以一个简单的例子说明问题:

 命名空间

到此命名空间介绍到此结束,有错请指出谢谢!