C++如何遍历嵌套map中的第二个值
时间: 2024-12-19 15:20:18 浏览: 3
C++11特性.pptx
在C++中,遍历嵌套的`std::map`(或`std::unordered_map`),特别是获取每个键值对的第二个元素(通常是另一个容器),通常涉及两层迭代。假设你的`map`结构如下:
```cpp
std::map<std::string, std::pair<int, std::vector<int>>> nestedMap;
```
其中第一个键是字符串,对应的值是一个包含整数和整数向量的`std::pair`。
你可以通过下面的方式遍历并获取第二个值(也就是向量)的元素:
```cpp
for (const auto &entry : nestedMap) {
const std::vector<int> &innerVector = entry.second.second; // 获取第二个值
for (int innerValue : innerVector) {
std::cout << innerValue << " ";
}
std::cout << "\n";
}
```
这里,外层循环`entry`遍历整个嵌套的`map`,内层循环`innerValue`用于访问并打印出每个向量的元素。
阅读全文