map<string,map<string,string>>:map中map用法示例
时间: 2023-12-08 09:06:39 浏览: 77
map<string, map<string, string>> 是一个键为 string 类型,值为 map<string, string> 类型的 map。
这个 map 中的每个元素都是一个键值对,其中键是一个 string 类型的字符串,值是另一个 map<string, string> 类型的 map,这个 map 中的每个元素也是一个键值对,其中键和值都是 string 类型的字符串。
下面是一个使用 map<string, map<string, string>> 的示例:
```cpp
#include <iostream>
#include <map>
using namespace std;
int main() {
map<string, map<string, string>> countries;
// 添加元素
countries["China"]["capital"] = "Beijing";
countries["China"]["population"] = "1.4 billion";
countries["USA"]["capital"] = "Washington D.C.";
countries["USA"]["population"] = "328 million";
countries["Japan"]["capital"] = "Tokyo";
countries["Japan"]["population"] = "126 million";
// 遍历元素
for (auto iter = countries.begin(); iter != countries.end(); iter++) {
cout << iter->first << ":" << endl;
for (auto sub_iter = iter->second.begin(); sub_iter != iter->second.end(); sub_iter++) {
cout << " " << sub_iter->first << " - " << sub_iter->second << endl;
}
}
return 0;
}
```
输出:
```
China:
capital - Beijing
population - 1.4 billion
Japan:
capital - Tokyo
population - 126 million
USA:
capital - Washington D.C.
population - 328 million
```
以上代码创建了一个 map<string, map<string, string>> 对象 countries,然后向其中添加了三个元素,每个元素都是一个键值对,其中键是一个 string 类型的字符串,值是另一个 map<string, string> 类型的 map,这个 map 中也是由键值对组成的。
遍历 map 的方法是使用迭代器,先遍历外层的 map,然后再遍历内层的 map,输出每个元素的键和值。
阅读全文