
C++的namespace 命名空间的作用.docx
2页独立团论坛:教学内容:C语言,C++,C#,易语言,游戏辅助编程.namespace 命名空间的作用:前面我们学习了 C++ 标准输入/输出流 iostream 头文件 里面的 cout 对象 利用 namespace 命名空间 std 就可以不用每次在使用 cout 和 endl 前面加 std::那么 namespace 命名空间的作用 不仅仅是可以让 cout 和 endl 变得更简洁,它真正的目地是为了避免和减少命名冲突,当然我们写一个庞大的程序时候,难免会重名,特别是一个项目程序由多个人合作完成的情况 下,在C++还没诞生前,过去C语言中的解决方法是靠人为的注意,并且加长名字来避免程序中的各命名重名的问题,虽然这是解决命名重名问题的办法之一,但这就无形中限制了程序员在写程序时,不能自由的命名自己使用的变量名或者函数名,所以 显示了 C 语言的不足自从C++诞生后,可以通过命名空间解决这一问题,这就是C++引入命名空间这个概念的好 处.我来举个比较形象的例子:有2 个双胞胎兄弟,他们的小名:一个叫小李,一个叫小彬,爸爸给他们买了2本一样的数学书, 为了区分这2本书,他们就要分别在自己的数学书上写上自己的名字,这个比喻 的道理就是告诉我们 在调用 cout 对象时 也要在前面写上所属的命名空间 std::虽然我们学会了在 代码里加上 using namespace std ,就使用 cout 对象时 前面不需要加 std:: 了,但是最好的方法就是不用using namespace std而是用 using std::cout ,这样可以避免命名重复的问题,这是因为不同的名字在不同的命名空间内 ,将他们都释放出来时,如果不小心就会造成 使用 了不该使用的库中的同名函数或同名对象。
