1 pair的應用
pair是將2個資料組合成乙個資料,當需要這樣的需求時就可以使用pair。
(1)stl中的map就是將key和value放在一起來儲存。
(2)另乙個應用是,當乙個函式需要返回2個資料的時候,可以選擇pair。
2 pair的構造
std::pair主要的作用是將兩個資料組合成乙個資料,兩個資料可以是同一型別或者不同型別。例如std::pair 或者 std::pair等。pair實質上是乙個結構體,其主要的兩個成員變數是first和second,這兩個變數可以直接使用。初始化乙個pair可以使用建構函式,也可以使用std::make_pair函式,make_pair函式的定義如下:
template pair make_pair(t1 a, t2 b)
一般make_pair都使用在需要pair做引數的位置,可以直接呼叫make_pair生成pair物件。 另乙個使用的方面就是pair可以接受隱式的型別轉換,這樣可以獲得更高的靈活度。但是這樣會出現如下問題:例如有如下兩個定義:
std::pair(1, 1.1);
std::make_pair(1, 1.1);
其中第乙個的second變數是float型別,而make_pair函式會將second變數都轉換成double型別。這個問題在程式設計是需要引起注意。
下面是一段pair與make_pair的例子程式:
[cpp]view plain
copy
#include
#include
#include
usingnamespace std;
intmain ()
其執行結果如下:
the price of tomatoes is $3.25
the price of lightbulbs is $0.99
the price of shoes is $20
的一些用法
action標籤,顧名思義,是用來呼叫action的標籤,在jsp中頁面中,可以具體指定某一命名空間中的某一action。而標籤的主體用於顯示及渲染actionr的處理結果。action標籤有如下幾個屬性 id 可選屬性,作為該action的引用id name 必選屬性,指定呼叫action nam...
IImage的一些用法
因為美工做出來的圖是png24,帶alpha通道透明的,用傳統的bitblt方法沒有辦法顯示 可能是本人比較笨啦,哈哈 所以採用了iimage的方法來進行畫圖。使用iimage的draw的方法時,要畫區域性是發現總是不對,查了一下msdn,發現是如下的問題。optional const rect s...
gcc 的一些用法
gcc編譯多個原始檔 一.常用編譯命令選項 假設源程式檔名為test.c。3.選項 e 用法 gcc e test.c o test.i 作用 將test.c預處理輸出test.i檔案。4.選項 s 用法 gcc s test.i 作用 將預處理輸出檔案test.i彙編成test.s檔案。5.選項 ...