1. 程式人生 > >[C++] 標頭檔案中不要用using namespace std

[C++] 標頭檔案中不要用using namespace std

先總結下:

 

1. using namespce std;儘量不要(或者強硬一點,不許)在標頭檔案中使用。

    解析: 不讓這麼用,主要原因就是防止名字重複(即自定義變數名和std中名字重複),因為標頭檔案會被很多地方使用,你不知道這個using能覆蓋多大範圍

 

2. 標頭檔案最好不用,但在cpp檔案中可以使用(但有比這更好的方法,之後說),但是,有個條件,必須用在所有#include之後

    解析:如果在cpp檔案中使用using namespace std; 而且,若放在#include之前,那相當於用在標頭檔案中了,你不知道標頭檔案展開後,這個using覆蓋多大的範圍。所以,必須用在所有#include之後。

 

3.  在標頭檔案和cpp檔案中,可以使用using命令(如 using std::cout;) 來替代 using編譯命令(using namespace std;)。

    舉例說明:

using namespace std; // 不要這樣做

而應這樣做

int y;
std::cin >> y ;
std::cout << y << std::endl;

或者這樣做

using std::cout;
using std::cin;
int y;
cin >> y;
cout 
<< y;

4. 當然,還有人想把using namespace std;放在自定義的名稱空間中,你可以去試試。

 

--------------------- 
作者:c+ 
原文:https://blog.csdn.net/qnavy123/article/details/79914339 
版權宣告:本文為博主原創文章,轉載請附上博文連結!