c++如何遍历map
时间: 2023-08-17 20:12:57 浏览: 143
Map遍历方法
在C++中,有多种方式可以遍历map。以下是三种常用的遍历方式:
方式一:使用范围for循环
```cpp
for(auto &t : m){
cout<<"key:"<<t.first<<" value:"<<t.second<<endl;
}
```
这种方式使用了C++11引入的范围for循环,可以直接遍历map中的每个元素。
方式二:使用迭代器
```cpp
for(map<int,string>::iterator iter = m.begin(); iter != m.end(); ++iter){
cout<<"key:"<<iter->first<<" value:"<<iter->second<<endl;
}
```
这种方式使用了迭代器来遍历map,通过`begin()`和`end()`函数获取map的起始和结束迭代器,然后使用循环遍历每个元素。
方式三:使用反向迭代器
```cpp
for(map<int,string>::reverse_iterator iter = m.rbegin(); iter != m.rend(); ++iter){
cout<<"key:"<<iter->first<<" value:"<<iter->second<<endl;
}
```
这种方式使用了反向迭代器来遍历map,通过`rbegin()`和`rend()`函数获取map的反向起始和结束迭代器,然后使用循环遍历每个元素。
以上是三种常用的遍历map的方式,你可以根据自己的需求选择适合的方式进行遍历。\[1\]\[2\]\[3\]
#### 引用[.reference_title]
- *1* [c++中 遍历map的三种方式](https://blog.csdn.net/m0_67390969/article/details/126317941)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [C++ map遍历的几种方式](https://blog.csdn.net/VariatioZbw/article/details/124947520)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [C++中map的遍历](https://blog.csdn.net/chengqiuming/article/details/89815814)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文