栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【『茴』的四种写法】 C++11 map和unordered

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【『茴』的四种写法】 C++11 map和unordered

map和unordered_map的遍历方法是相同的,不过遍历结果,map是有序的,unoredred_map遍历是无序的。 std:map 是个有序的关系容器,其完整原型如下:
template<
	class Key,
	class T,
	class Compare=std::less,
	class Allocator=std::allocator>
>class map;

键值对会根据键来用 Compare 排序,具体到 std::map 就是:

map>

C++11 map和unordered_map遍历方法
  • 一、迭代器 iterator
  • 二、类型萃取 (traits) value_type
  • 三、实际类型 pair
  • 四、结构化绑定 auto
  • 五、测试代码如下:
  • 六、map遍历结果:

一、迭代器 iterator
for(map::iterator it=mp.begin();it!=mp.end();++it)
	cout<first<<"--"<second<<"t";

for(map::const_iterator it=mp.begin();it!=mp.end();++it)
	cout<first<<"--"<second<<"t";
二、类型萃取 (traits) value_type
for(map::value_type& i:mp)
	cout< 
三、实际类型 pair 
for(pair&i:mp)//key必须是const的
	cout< 
四、结构化绑定 auto 
    for(auto&[k,v]:mp)
    cout< 
五、测试代码如下: 
#include
#include
#include
#include
#include
using namespace std;

int main(){

    mapmp;
    for(int i=0;i<10;i++)mp[i]=i;

    cout<::iterator it=mp.begin();it!=mp.end();++it)
        cout<first<<"--"<second<<"t";

    cout<::const_iterator it=mp.begin();it!=mp.end();++it)
        cout<first<<"--"<second<<"t";

    cout<::value_type& i:mp)
        cout<&i:mp)
        cout< 
六、map遍历结果: 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/529576.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号