C++鐨剈nordered_map鎬庝箞浣跨敤
unordered_map 鏄?C++ 涓殑涓€涓叧鑱斿鍣紝瀹冩彁渚涗簡鍩轰簬閿€煎鐨勫揩閫熸煡鎵惧姛鑳姐€備笅闈㈡槸浣跨敤 unordered_map 鐨勪竴浜涘熀鏈搷浣滐細
-
鍖呭惈澶存枃浠讹細闇€瑕佸寘鍚?
<unordered_map>
澶存枃浠躲€?/p> -
鍒涘缓 unordered_map 瀵硅薄锛氬彲浠ヤ娇鐢ㄤ笅闈㈢殑璇硶鍒涘缓涓€涓?unordered_map 瀵硅薄锛?/p>
std::unordered_map<KeyType, ValueType> myMap;
鍏朵腑锛孠eyType 鏄敭鐨勭被鍨嬶紝ValueType 鏄€肩殑绫诲瀷銆?/p>
- 鎻掑叆閿€煎锛氬彲浠ヤ娇鐢?insert 鍑芥暟鎻掑叆涓€涓敭鍊煎鍒?unordered_map 涓細
myMap.insert(std::make_pair(key, value));
鎴栬€呬娇鐢ㄤ笅鏍囨搷浣滅 []锛?/p>
myMap[key] = value;
- 鍒犻櫎閿€煎锛氬彲浠ヤ娇鐢?erase 鍑芥暟鍒犻櫎鎸囧畾閿殑閿€煎锛?/li>
myMap.erase(key);
- 璁块棶閿€煎锛氬彲浠ヤ娇鐢ㄤ笅鏍囨搷浣滅 [] 鏉ヨ闂?unordered_map 涓殑閿€煎锛?/li>
value = myMap[key];
涔熷彲浠ヤ娇鐢?find 鍑芥暟鏉ユ煡鎵炬寚瀹氶敭鐨勫€硷細
auto it = myMap.find(key);
if (it != myMap.end()) {
value = it->second;
}
- 閬嶅巻 unordered_map锛氬彲浠ヤ娇鐢ㄨ凯浠e櫒鏉ラ亶鍘?unordered_map 涓殑鎵€鏈夐敭鍊煎锛?/li>
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
key = it->first;
value = it->second;
}
- 鍒ゆ柇閿槸鍚﹀瓨鍦細鍙互浣跨敤 find 鍑芥暟鏉ュ垽鏂寚瀹氶敭鏄惁瀛樺湪浜?unordered_map 涓細
auto it = myMap.find(key);
if (it != myMap.end()) {
// 閿瓨鍦?/span>
}
杩欎簺鏄?unordered_map 鐨勪竴浜涘熀鏈娇鐢ㄦ柟娉曪紝浣犲彲浠ユ牴鎹疄闄呴渶姹備娇鐢ㄥ畠浠潵鎿嶄綔 unordered_map 涓殑閿€煎銆?/p>
相关问答