什么是命名空间(为什么要使用命名空间)

访客4年前黑客文章498

什么是命名空间?

为什么要写using namespace std;这句话呢

这是C++新引入的一个机制,主要是为了解决多个模块间命名冲突的问题,就像现实生活中两个人重名一个道理。C++把相同的名字都放到不同的空间里,来防止名字的冲突

例如标准C++库提供的对象都存放在std这个标准名字空中,比如cin、cout、endl,所以我们会看到在C++程序中都会有using namespace std;这句话了

如程序:

#include

using namespace std;

int main()

{

cout<<"Nice to meet you!"<

return 0;

}

「C++基础教学」什么是命名空间?你真的知道吗?

推荐一个我自己的C/C++交流群:815393895

程序用到cout和endl则必须提前告知使用std这个命名空间,除此以外,还有另外两种写法:

第二种:

用域限定符::来逐个制定,刚才的代码还可以写成:

#include

int main()

{

std::cout<<"Nice to meet you!"<

return 0;

}

看到了吗,cout和endl前面分别用std::指明,表示来自std

第三种:用using和域限定符一起制定用哪些名字,如代码:

#include

using std::cout;

using std::endl;

int main()

{

cout<<"Nice to meet you!"<

return 0;

}

看到了吗?可以在前面先用using对具体的名字进行声明,也可以

以上三种,大家用哪种都可以,为今后统一方便,我们教程中统一之一种写法。

值得一提的是,其实早期的C++标准是没有命名空间这个概念的,头文件包含也和C一样,都是带.h后缀的。只是新标准中使用不带.h的头文件包含时,必须要声明命名空间,并且包含头文件在前,声明使用的名字空间在后。

 

标签: 要使空间

相关文章

蚂蚁庄园5月22日答案 斗牛士在斗牛时,为什么要使用红色的布?  

大家都知道西方有一种活动,就是斗牛,斗牛和我们斗鸡还是不同的,比较危险,今天支付宝蚂蚁庄园的问题,就是跟斗牛有关。今天支付宝蚂蚁庄园2020年5月22日庄园小课堂的答案是什么呢?蚂蚁庄园庄园小课堂20...

蚂蚁庄园5月19日答案 斗牛士在斗牛时,为什么要使用红色的布?

蚂蚁庄园5月19日答案 斗牛士在斗牛时,为什么要使用红色的布?

斗牛士在斗牛时,为什么要使用红色的布?每日一题又来了,今天蚂蚁庄园的问题是斗牛士在斗牛时,为什么要使用红色的布?那么各位小伙伴知道到底是什么吗?接下来小编就带领各位小伙伴了解一下。 蚂蚁庄园5月...

什么叫域名系统,为什么要使用域名系统!

什么叫域名系统,为什么要使用域名系统!

域名是什么,很多人都好奇,其实域名就是网站的网址,比如说这个网址all55.com,它就是一个域名。all55这是域名的前缀,这个是用户自定义的。.com这个呢是域名的后缀是指代表一个域名类型的符号。...

斗牛士在斗牛时为什么要使用红色的布 蚂蚁庄园5月19日答案

斗牛士在斗牛时为什么要使用红色的布 蚂蚁庄园5月19日答案

斗*牛士在斗*牛时,为什么要使用红色的布?牛对红色很敏感、增强现场感染力。这是蚂蚁庄园5月19日庄园小课堂每日一题的题目,小伙伴们知道斗*牛用红布的原因是什么吗?下面就是蚂蚁庄园5月19日每日一题答案...

蚂蚁庄园小课堂2020年5月19日答案 斗牛士在斗牛时为什么要使用红色的布

蚂蚁庄园小课堂2020年5月19日答案 斗牛士在斗牛时为什么要使用红色的布

2020年5月19日支付宝蚂蚁庄园庄园小课堂答案是什么?5月19日的问题是斗牛士在斗牛时,为什么要使用红色的布?给出的选项是牛对红色很敏感、增强现场感染力,大家知道应该选择哪个答案吗?下面小编为大家带...

蚂蚁庄园5月22日庄园小课堂答案 斗牛士在斗牛时为什么要使用红色的布

蚂蚁庄园5月22日庄园小课堂答案 斗牛士在斗牛时为什么要使用红色的布

2020年5月22日支付宝蚂蚁庄园庄园小课堂答案是什么?5月22日的问题是斗牛士在斗牛时,为什么要使用红色的布?给出的选项是牛对红色很敏感、增强现场感染力,大家知道应该选择哪个答案吗?下面小编为大家带...