std::unordered_map 如何使用
时间: 2024-02-05 13:09:20 浏览: 31
std::unordered_map 是 C++ STL 中的一个容器,它提供了一种键值对的映射关系。使用 std::unordered_map 可以快速地根据键查找对应的值,其内部实现是基于哈希表。
下面是 std::unordered_map 的基本用法:
1. 包含头文件:
```cpp
#include <unordered_map>
```
2. 创建 std::unordered_map 对象:
```cpp
std::unordered_map<KeyType, ValueType> myMap;
```
其中 KeyType 是键的类型,ValueType 是值的类型。可以根据实际需求来指定这两个类型。
3. 插入键值对:
```cpp
myMap[key] = value;
```
这里的 key 是要插入的键,value 是对应的值。
4. 查找值:
```cpp
ValueType result = myMap[key];
```
这里的 key 是要查找的键,result 是对应的值。
5. 删除键值对:
```cpp
myMap.erase(key);
```
这里的 key 是要删除的键。
6. 判断键是否存在:
```cpp
if (myMap.find(key) != myMap.end()) {
// 键存在
} else {
// 键不存在
}
```
这里的 key 是要判断的键。
7. 遍历键值对:
```cpp
for (const auto& pair : myMap) {
KeyType key = pair.first;
ValueType value = pair.second;
// 处理键值对
}
```
这里的 pair 是一个键值对,first 是键,second 是值。
这是 std::unordered_map 的基本用法,你可以根据实际需求来插入、查找、删除和遍历键值对。如果有更多高级用法或者其他问题,请继续提问。