std::vector<std::map<int, SATBackendStruct::GateInfo>> m_gDateInfo; //门限数据 递归遍历
时间: 2024-10-19 07:07:26 浏览: 69
`std::vector<std::map<int, SATBackendStruct::GateInfo>> m_gDateInfo;` 是一个动态数组,其中每个元素都是一个关联容器 `std::map`,用于存储键值对。这里的键通常是整数,值是 `SATBackendStruct::GateInfo` 类型的对象。`m_gDateInfo` 可能代表门限信息的数据结构,其中每个 `std::map` 对应一个特定的门限。
对于这样的数据结构,如果你想要递归遍历所有门限及其对应的门限信息,你可以编写如下的函数:
```cpp
void recursiveTraversal(const std::vector<std::map<int, SATBackendStruct::GateInfo>>& dateInfoList, size_t index = 0) {
if (index < dateInfoList.size()) {
const auto& currentMap = dateInfoList[index];
for (const auto& pair : currentMap) {
std::cout << "阈值: " << pair.first << ", 门限信息: " << pair.second << std::endl;
// 如果 map 还包含子项,继续递归遍历
recursiveTraversal(dateInfoList, index + 1);
}
}
}
```
这个函数会从第一个 `std::map` 开始,逐个提取键值对,并递归地访问下一层嵌套的 `std::map`,直到遍历完整个 `vector`。
阅读全文
相关推荐











