溫馨提示×

c++中unordered_map的作用是什么

c++
小億
118
2024-01-11 01:12:16
欄目: 編程語言

unordered_map是C++標準庫中的一個容器,用于存儲鍵值對。它的作用類似于字典或者哈希表,可以快速地根據鍵查找對應的值。

unordered_map使用哈希表來實現,具有快速的查找操作。相對于map容器,unordered_map沒有按照鍵的順序進行排序,因此在查找操作上更加高效??梢詫nordered_map用于需要快速查找鍵值對的場景,例如計數器、緩存等。

使用unordered_map時,鍵和值可以是任意類型,只要滿足特定的要求。unordered_map提供了一系列的成員函數和操作符,可以方便地插入、刪除、訪問和修改鍵值對。

例如,下面的代碼演示了unordered_map的基本用法:

#include <iostream>
#include <unordered_map>

int main() {
    std::unordered_map<int, std::string> map;

    // 插入鍵值對
    map.insert({1, "apple"});
    map.insert({2, "banana"});
    map.insert({3, "orange"});

    // 訪問和修改值
    std::cout << map[1] << std::endl; // 輸出: apple
    map[1] = "kiwi";
    std::cout << map[1] << std::endl; // 輸出: kiwi

    // 查找鍵值對
    if (map.find(2) != map.end()) {
        std::cout << "Found key 2: " << map[2] << std::endl; // 輸出: Found key 2: banana
    }

    // 刪除鍵值對
    map.erase(3);

    // 遍歷所有鍵值對
    for (const auto& pair : map) {
        std::cout << "Key: " << pair.first << ", Value: " << pair.second << std::endl;
    }

    return 0;
}

輸出結果:

apple
kiwi
Found key 2: banana
Key: 1, Value: kiwi
Key: 2, Value: banana

總之,unordered_map提供了一種高效的存儲和查找鍵值對的方式,適用于需要快速訪問和修改數據的場景。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女