C++入門(名稱空間)
阿新 • • 發佈:2020-10-26
目錄
C++中的名稱空間
做題的時候經常看見C++中有一行:using namespace std;
不是很明白,就去網上查了一查,寫下這篇博文大致解釋一下。
1. 名稱空間的由來
C++中如果有必須的標識重名了,那麼該如何區分它們?為了處理這樣的情況,引入namespace的概念,將重名的標識名,分別放入不同的namespace中,以區別使用。
2. 使用std中的標識
方式1——空間名::標識名
#include <iostream> int main(){ std::cout<<"Hello World"<< std::endl; return 0; }
方式2——using namespace std;
#include <iostream>
using namespace std;//引入名稱空間
int main(){
cout << "Hello World" << endl;//等價於上一行
return 0;
}
我們可以發現輸出是相同的,
也就是說在using namespace std之後,std中的內容我們可以直接使用,而不用在前面加上std::XXX【有作用域的】
3. 模擬
我們可以舉一個例子,自己設定空間的內容,來模擬一下
#include<iostream> using namespace std; namespace a { int b=5; } namespace c { int b=8; } namespace d { int b=9; } int main() { int b=9; cout << d::b << " " << a::b << " " << c::b << endl; using namespace d; cout << b << endl; return 0; }
結果輸出:
9 5 8
9