map 遍历的几个方式
时间: 2023-12-01 17:42:34 浏览: 82
map是C++ STL中的一个关联容器,它提供了一种键值对的映射关系。在遍历map时,我们可以使用以下几种方式:
1. 使用迭代器遍历:可以使用迭代器来遍历map中的所有元素,代码如下:
```
map<int, string> myMap;
// 添加元素
myMap[1] = "one";
myMap[2] = "two";
myMap[3] = "three";
// 使用迭代器遍历
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
cout << it->first << " : " << it->second << endl;
}
```
2. 使用auto关键字遍历:可以使用auto关键字来简化迭代器的定义,代码如下:
```
map<int, string> myMap;
// 添加元素
myMap[1] = "one";
myMap[2] = "two";
myMap[3] = "three";
// 使用auto关键字遍历
for (auto const& [key, val] : myMap) {
cout << key << " : " << val << endl;
}
```
3. 使用for-each循环遍历:可以使用for-each循环来遍历map中的所有元素,代码如下:
```
map<int, string> myMap;
// 添加元素
myMap[1] = "one";
myMap[2] = "two";
myMap[3] = "three";
// 使用for-each循环遍历
for (auto const& [key, val] : myMap) {
cout << key << " : " << val << endl;
}
```
阅读全文