關聯容器支援高效的關鍵字查詢和訪問。map中的元素是一些關鍵字-值(key-value)對:關鍵字起到索引的作用,值則是表示與索引相關聯的資料。set中每個元素只包含乙個關鍵字,可以說set是乙個特殊的map。
標準庫提供8個關聯容器,允許重複關鍵字的容器的名字中都包含單詞multi;不保持關鍵字按順序儲存的容器的名字都以unordered開頭。因此乙個unordered_multi_set是乙個允許重複關鍵字,元素無序儲存的集合。
型別map和multimap定義在標頭檔案map中;set和multiset定義在標頭檔案set中;無序容器則定義在標頭檔案unordered_map和unordered_set中。
先來乙個set使用的簡單例子:
// set_ex.cpp : 定義控制台應用程式的入口點。
//#include "stdafx.h"
#include #include using namespace std;
int _tmain(int argc, _tchar* argv)
cout<::iterator itor,upitor,downitor;
for(itor=myset.begin(); itor!=myset.end(); itor++)
cout<::iterator, set::iterator> ret=myset.equal_range(7);
cout<0) }
//利用迭代器列印multimap中的資料
cout<<"列印按字母順序排好的文字,按「作者 著作」排序:"<::iterator itor;
for(itor=mymap.begin();itor!=mymap.end(); itor++)
{ cout<<(*itor).first<<" "<<(*itor).second 1 關聯容器定義 儲存物件集合的型別,支援通過鍵的高效訪問。和順序容器的本質差別在於 順序容器通過元素在容器中的位置順序儲存和訪問元素,而關聯容器卻是依靠鍵。map和set是兩個基本的關聯容器型別,map以鍵值對的形式組織儲存元素,而set僅儲存鍵。2,pair型別 在utility標頭檔案中定義 ... 1 關聯容器與順序容器的本質區別 關聯容器通過鍵 key 儲存和讀取元素,而順序容器則通過元素在容器中的位置順序儲存和訪問元素。2 關聯容器的型別 map set multimap multiset 3 pair型別 pair型別的比較 p1 p1 p2 如果兩個pair物件的first和secon... 簡介 對於關聯容器,它的每個元素都有乙個鍵 key 容器中的元素的順序並不能人為隨意決定,而是按照鍵的取值公升序排列的。也就是說,對於乙個關聯容器s,使用迭代器在 s.begin s.end 區間內遍歷,訪問到的序列總是公升序的。分類 按照容器中是否允許出現重複鍵值,關聯容器可分為單重關聯容器和多重...C 標準庫關聯容器
STL 關聯容器
stl 關聯容器