如何遍历undered_map
时间: 2024-08-13 13:01:33 浏览: 42
M_Map工具包使用说明
4星 · 用户满意度95%
在C++中,`unordered_map`是一个关联容器,它使用哈希表实现,用于存储键值对。遍历`unordered_map`主要是为了访问其中的元素。你可以通过迭代器来实现这个目的。以下是遍历`unordered_map`的基本步骤:
1. 创建迭代器:首先,你需要获取`unordered_map`的迭代器,通常会有一个默认构造函数创建开始迭代的位置。
```cpp
std::unordered_map<KeyType, ValueType> myMap;
std::unordered_map<KeyType, ValueType>::iterator it;
```
2. 遍历地图:然后,你可以使用`begin()`和`end()`函数分别得到map的第一个和最后一个迭代器,并用`++it`递增迭代器来访问每个元素。
```cpp
for (it = myMap.begin(); it != myMap.end(); ++it) {
const auto& pair = *it; // 获取当前键值对
KeyType key = pair.first;
ValueType value = pair.second;
// 对键值对进行操作
}
```
在这个循环中,`pair`是一个引用,包含当前映射项的键和值。如果你需要自定义迭代过程,可以使用范围-based for循环:
```cpp
for (const auto& item : myMap) {
KeyType key = item.first;
ValueType value = item.second;
// ...
}
```
阅读全文