C++語言中使用頭文件保存程序中用到的聲明,例如,函數聲明,常量定義等。
代碼示例:ios
1 #include <iostream>
2 #include <string>
3 using namespace std;
4 int main(){
5 string name;
6 cout<<"輸入你的名字"<<endl;
7 cin>>name;
8 cout<<"Hello "<<name<<endl;
9 return 0;
}
複製代碼
上述程序第1行使用# include指令包含了頭文件iostreamo。iostream是c++的標準輸入輸出流。
注意點:c++
經常使用的頭文件有如下這些:程序員
除了可使用系統提供的頭文件外,咱們還能夠定義本身的頭文件,並在程序中使用# include指令將其包含進來。 默認規則(使用C++語言的程序員都遵循的規則):
一般,使用尖括號括住系統提供的頭文件,使用雙引號括住咱們本身定義的頭文件。markdown
當使用尖括號時,c++編譯器將首先在c++系統設定的目錄中尋找要包含的文件,若是沒有找的到,再到指令中指定的目錄中去查找。函數
採用雙引號時,c++編譯器在用戶當前目錄下或指令中指定的目錄下尋找要包含的文件,例如,要包含ridingroad用戶家目錄下的頭文件custom.h,相應的語句以下:spa
#include "/home/ridingroad/custom.h"
複製代碼
有Python基礎的話,理解C++中的命名空間就像和Python的包的概念同樣。爲了不不一樣包裏面的命名衝突。一個大型的程序一般由不一樣的模塊構成,各個模塊有多是由不一樣的程序員開發的。不一樣模塊中出現的標識符之間有可能發生重名現象,這就會引起錯誤。C++中爲了不名字衝突,特別引入了「命名空間」的定義,即namespace。目的:命名空間的做用是爲了消除同衆引發的歧義。code
上面程序第3行"using namespace std;",表示使用命名空間std。按照Python的理解的話,就是導入std這個包,而且是相似於:orm
from std import *
複製代碼
一個大型的程序一般由不一樣的模塊構成,各個模塊有多是由不一樣的程序員開發的。不 同模塊中出現的標識符之間有可能發生重名現象,這就會引起錯誤。C中爲了不名字 (義衝究 特別引入了「命名空間」的定義,即namespace。命名空間的做用是爲了消除同衆 引發的歧義。ci
方法1:開發
命名空間名::標識符名
複製代碼
例如:
stad::cin std::cout std::endl
複製代碼
using語句有兩種形式:
using 命名空間名::標識符; 相似於Python的 from xxx import yy
using namespace命名空間名; 相似於Python的 from xxx import *
複製代碼
前一種形式表示,能夠在本文件中直接使用該標識符; 後一種形式表示,能夠在本文件 中直接使用指定命名空間內的全部標識符。