C++的命名空間的現實意義
阿新 • • 發佈:2018-04-01
C++原創文章 C++學習資料 C++學習靈感 程序中不能有兩個函數名一摸一樣的,但是程序做大了,就很可能會造成兩個同名同參的函數;這樣就會導致歧義而錯誤。
所以做出命名空間,可以做到只要是不同的空間中可以同名同參函數,這樣以後其他人來做了,可以不用看以前寫了什麽函數名,而只要弄個新的空間,就可以隨意的寫函數名了。這樣就更加方便程序的維護!這在比如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;
}
效果一樣
C++的命名空間的現實意義