爲什麼不用using namespace std;

std 是一個c++中的標準命名空間。如果將C,C++,Java聯繫起來,就會有一種特別的感悟。

首先把C++單純的認爲是C的擴展版本,即在C的基礎上導入的某個進階包。(相當於Java中的import)。

則可以認爲,std是一個用C寫出來的一個特殊的類,或者說接口,裏面裝着C++(認爲是C的擴展包,其實大誤)各種各樣的函數名。using namespace std;就是相當於導入std這個包。

但是由於C++的特殊機制,相當於在程序中定義了一系列的全局變量。這些全局變量直接一次性的全部都被定義出來了。但是,當你再去定義自己的函數的時候,你根本就不知道自己定義的函數名是否和std標準命名空間裏的函數名重名。

所以,並不推薦直接使用using namespace std;

那麼怎麼用呢?

或許你可以試一下僅把自己需要用到的函數名導入一下。

C++ std中常用的函數就是那麼幾個,隨用隨導就可以了。

#include<iostream>
using namespace std::cin;//使用(導入)C++中的輸入流
using namespace std::cout;//使用(導入)C++中的輸出流
using namespace std::endl;//使用(導入)輸出換行符

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章