C++的命名空间的现实意义

原创 ningcaichen66 随笔 C++ 27阅读 19 天前 举报

程序中不能有两个函数名一摸一样的,但是程序做大了,就很可能会造成两个同名同参的函数;这样就会导致歧义而错误。

所以做出命名空间,可以做到只要是不同的空间中可以同名同参函数,这样以后其他人来做了,可以不用看以前写了什么函数名,而只要弄个新的空间,就可以随意的写函数名了。这样就更加方便程序的维护!这在比如PHP中用的很多,而且加强了命名空间的使用,如:TP5中有很多层级的命名空间,原理是一样的。

include<iostream>

include<stdlib.h>

int main() {
std::cout << "灵感编程-C++" << std::endl;

system("pause");
return 0;

}

以前C语言的时候,是没有什么std::这些修饰的,为何?

因为它就一个命名空间,那么在这个命名空间里,就不能有一摸一样的函数;

C++朝着能开发更大的程序去设计,所以很可能造成一摸一样的函数,而增加后续参与人员的开发麻烦和维护麻烦。所以C++做成了多个空间。

就像有多个宇宙一样,各自互不干扰。

所以C++出现了命名空间,而std就是空间名;要使用某空间里面的东西就得指明是哪个命名空间。

但是每次使用都来写空间名,又有点麻烦。

所以就提供了简化的方式:

先指定使用哪个空间。

include<iostream>

include<stdlib.h>

using namespace std;

int main() {
cout << "灵感编程-C++" << endl;

system("pause");
return 0;

}
效果一样

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复