C++遍历unordered_map<int,vector<Int>>
时间: 2024-10-01 13:11:08 浏览: 38
Find_Duplicates_using_unordered_map
在C++中,`unordered_map`是一个关联容器,用于存储键值对,其中键通常是唯一的。如果你想遍历这样一个`unordered_map<int, vector<Int>>`,即键是整数,值是包含整数的向量,你可以使用迭代器来逐个访问每一项。以下是遍历的基本步骤:
```cpp
#include <iostream>
#include <unordered_map>
#include <vector>
int main() {
// 创建一个unordered_map示例
std::unordered_map<int, std::vector<int>> myMap = {
{1, {10, 20, 30}},
{2, {40, 50}},
{3, {60, 70, 80}}
};
// 使用迭代器遍历
for (const auto& pair : myMap) {
int key = pair.first; // 键
const std::vector<int>& values = pair.second; // 值向量
std::cout << "Key: " << key << ", Values: ";
for (const auto& value : values) {
std::cout << value << " ";
}
std::cout << std::endl;
}
return 0;
}
```
在这个例子中,我们首先通过范围for循环获取到每个元素(键值对),然后分别访问键和值向量。注意,`pair.second`返回的是指向内部向量的引用,需要使用`const`前缀来避免修改原始内容。
阅读全文