先總結下:
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
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!