溫馨提示×

c++中unordered_map的用法是什么

c++
小億
148
2024-01-11 01:02:07
欄目: 編程語言

unordered_map是C++中的關聯式容器,它提供了一種通過鍵值對(key-value)來存儲和訪問元素的方式。unordered_map使用哈希表來實現,在大多數情況下,它提供了常數時間的元素插入、訪問和刪除操作。

unordered_map的用法如下:

  1. 頭文件引用:#include <unordered_map>
  2. 聲明unordered_map對象:std::unordered_map<Key, T> map;,其中Key和T分別代表鍵和值的類型,可以是任意可哈希的類型。
  3. 插入元素:使用insert()函數來插入鍵值對,例如:map.insert(std::make_pair(key, value));map[key] = value;
  4. 訪問元素:使用下標操作符[]訪問元素,例如:map[key],如果key不存在,將會自動插入一個默認值。
  5. 刪除元素:使用erase()函數來刪除元素,例如:map.erase(key);
  6. 查找元素:使用find()函數來查找特定鍵的元素,例如:auto it = map.find(key);,如果找到了,it指向該元素,否則指向map.end()。
  7. 遍歷元素:可以使用迭代器來遍歷unordered_map中的元素,例如:
    for (auto it = map.begin(); it != map.end(); ++it) {
        std::cout << "Key: " << it->first << ", Value: " << it->second << std::endl;
    }
    
    或者使用范圍-based for循環:
    for (const auto& pair : map) {
        std::cout << "Key: " << pair.first << ", Value: " << pair.second << std::endl;
    }
    

需要注意的是,unordered_map中的元素是無序存儲的,所以無法保證元素的順序。如果需要按特定順序訪問元素,可以考慮使用std::map。

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