pair是乙個很實用的「小玩意」,當想要將兩個元素綁在一起作為乙個合成元素、又不想要因此定義結構體時,使用pir可以很方便地作為乙個代替品。
要使用pair,應先新增標頭檔案#include ,並在標頭檔案下面加上「 using namespace std;"。
注意:由於map的內部實現中涉及pair,因此新增map標頭檔案時會自動新增utiliy標頭檔案,此時如果需要使用pai,就不需要額外再去新增utility標頭檔案了。因此,記不住「utility」拼寫的讀者可以偷懶地用map標頭檔案來代替utility標頭檔案。
實際上可以將pair看作乙個內部有兩個元素的結構體,且這兩個元素的型別是可以指定的,如下面的短**所示:
struct pair ;
pair有兩個引數,分別對應first和second的資料型別,它們可以是任意基本資料型別或容器。
pairname;
想要定義引數為string和int型別的pair,就可以使用如下寫法:
pairp;
pairp("haha", 5);
而如果想要在**中臨時構建乙個pair,有如下兩種方法:
①將型別定義寫在前面,後面用小括號內兩個元素的方式。
pair( haha,5);
②使用自帶的 make pair函式。
make_pair("haha",5);
使用例項請參考「pair中元素的訪問」。
pair中只有兩個元素,分別是first和second,只需要按正常的結構體的方式去訪問即可。
程式**:
#include#include#includeusing namespace std;
int main()
return 0;
}
執行結果:
最終結果為
ai 7
lichuachua 6
xuexi 8
的原因是map會以鍵從小到大的順序自動排序,即按照a想要了解map的請參考:map的常用用法詳解 STL之pair常見用法詳解
摘自胡凡的 演算法筆記 僅作記錄用!前言 一 pair的定義 pair有兩個引數,分別對應first和second的資料型別,它們可以是任意基本資料型別或容器,可以使用pairname 定義乙個pair型別。如果想要在 中令是構建乙個pair,有如下兩種方法 二 pair容器內元素的訪問 pair中...
pair的常見用法
pair實際上可以看做乙個內部有兩個元素的結構體,且這兩個元素的型別是可以指定的。struct pair 要是用pair就要新增標頭檔案 include還需要using namespace std 不過map的內部實現涉及到pair,所以如果匯入map可以不用匯入utility.這樣的直接定義 pa...
c 中pair類模板的用法詳解
pair 標頭檔案 include 類模板 template struct pair 引數 t1是第乙個值的資料型別,t2是第二個值的資料型別。功能 pair將一對值組合成乙個值,這一對值可以具有不同的資料型別 t1和t2 兩個值可以分別用pair的兩個公有函式first和second訪問。具體用法...