該容器的特點
存放資料的方式:key = value
,通過key
進行檢索。
存放資料時無序的。
檢索的速度比map
類快。
過載了[ ]
運算子。
iterator
可以訪問key
和value
。
unordered_mapm = ,
};unordered_map::iterator it = m.begin();
int key = it->first;
bool b = it->second;
與檢索相關的成員函式
operator[key]
查詢成功:返回value
的引用(reference)。
查詢失敗:在map
後面插入乙個新的元素,key
為當前查詢的值,value
在未賦值的情況下是為空的。
// unordered_map::operator
#include #include #include using namespace std;
int main ()
return 0;
}output result:
bakery: barbara
seafood: lisa
produce: john
***xx:
auto& x : mymap
:使用智慧型指標進行遍歷。
find(key)
查詢成功:返回乙個iterator
,指向該元素。
查詢失敗:返回乙個iterator
,指向map.end()
。
at(key)
查詢成功:返回引用。
查詢失敗:丟擲out_of_range
(#include
)異常。
#include // std::cerr
#include // std::out_of_range
#include // std::vector
int main (void) ,
};int i = 7;
try catch (const std::out_of_range& oor)
return 0;
}
orr.what()
:列印錯誤流中的資訊。
Flutter 容器類元件之裝飾容器
decoratedbox可以在其子元件繪製前後繪製一些裝飾,例如背景,邊框,漸變等。const decoratedbox assert decoration null assert position null super key key,child child oxdecoration 裝飾容器 d...
Qt的容器類之容器,迭代器
qt中的容器被分為兩個大類 容器元素是乙個值的,比如qvector,以及容器元 素是乙個 key,value 對的,比如qmap。1 第一大類中,qvector將其所有元素存放在一塊連續的記憶體中。隨機訪問的速度很快,但是插入 刪除操作很慢。qstack是qvector的子類,實現棧的功能。除了具有...
QT容器類(三) 之 QMap QHash
一 介紹 qmap qmap中的key value對是公升序排列的 插入和刪除操作中都可以使用運算子,其下標為key 為避免建立不必要的空值,推薦用vlaue 而不是從qmap中取值。qmap中的k和t除了要求具備預設建構函式 拷貝建構函式和賦值運算子外,k還必須支援operator keys va...