pair容器
pair
這個(gè)類把一對(duì)值(values)結(jié)合在一起,這些值可能是不同的類型(T1 和 T2)。每個(gè)值可以被公有的成員變量first、second訪問(wèn)。
pair是tuple(元組)的一個(gè)特例。
pair的實(shí)現(xiàn)是一個(gè)結(jié)構(gòu)體,主要的兩個(gè)成員變量是first second 因?yàn)槭鞘褂胹truct不是class,所以可以直接使用pair的成員變量。
應(yīng)用:
?可以將兩個(gè)類型數(shù)據(jù)組合成一個(gè)如map<key, value>
?當(dāng)某個(gè)函數(shù)需要兩個(gè)返回值時(shí)
template <class T1, class T2> struct pair;
pair::pair
構(gòu)建一個(gè)pair對(duì)象。
這涉及到單獨(dú)構(gòu)建它的兩個(gè)組件對(duì)象,初始化依賴于調(diào)用的構(gòu)造器形式:
(1)默認(rèn)的構(gòu)造函數(shù)
構(gòu)建一個(gè) 對(duì)對(duì)象的元素值初始化。
(2)復(fù)制/移動(dòng)構(gòu)造函數(shù)(和隱式轉(zhuǎn)換)
該對(duì)象被初始化為pr的內(nèi)容 對(duì)目的。pr 的相應(yīng)成員被傳遞給每個(gè)成員的構(gòu)造函數(shù)。
(3)初始化構(gòu)造函數(shù)
會(huì)員 第一是由一個(gè)和成員構(gòu)建的第二與b。
(4)分段構(gòu)造
構(gòu)造成員 first 和 second 到位,傳遞元素first_args 作為參數(shù)的構(gòu)造函數(shù) first,和元素 second_args 到的構(gòu)造函數(shù) second 。
總結(jié)
- 上一篇: tuple容器
- 下一篇: 主机字节序与网络字节序