当前位置: 首页 > news >正文

网站建站服务公司电话发布软文的平台有哪些

网站建站服务公司电话,发布软文的平台有哪些,网站静态化 好处,佛山市品牌网站建设多少钱【C】序列与关联容器&#xff08;三&#xff09;map与multimap容器 一、map二、multiset / multimap 一、map 树中的每个结点的类型是一个std::pair //pair的类型是<const key,value> pair是一个包含两个指针的结构体&#xff0c;第一个指针指向该节点的key&#xff0c;…

【C++】序列与关联容器(三)map与multimap容器

  • 一、map
  • 二、multiset / multimap

一、map

  • 树中的每个结点的类型是一个std::pair //pair的类型是<const key,value>
    pair是一个包含两个指针的结构体,第一个指针指向该节点的key,第二个指针指向该节点的value。
  • 键(pair.first) 需要支持使用< 比较大小
  • 或者采用自定义的比较函数来引入大小关系
  • 访问元素:find / [] / at

在这里插入图片描述
map初始化:

map<int, bool> m{ {3,true} ,{ 2,false } ,{5,true} };

打印map中的数据:

  • 使用range_based for方式
for (auto p : m)
{cout << p.first << " " << p.second << endl;
}
  • 使用pair方式
for (auto ptr = m.begin(); ptr != m.end(); ++ptr)
{auto p = *ptr;  //pair的类型是:<const int, bool>cout << pair.first << " " << pair.second << endl;
}
  • 使用绑定函数方式
for (auto  [k,v] : m)//拷贝方法
{cout << k << " " << v << endl;
}
for (auto&  [k,v] : m)//直接使用引用的方法
{cout << k << " " << v << endl;
}

访问map中的数据
注意[]方式的使用:
如果[]中输入的key值在已定义的map中并不存在,系统并不会返回不存在这样的信息,而是会新建一个该key值对应的节点,并把value隐式的初始化为0。
如下:

map<int, bool> m{ {3,true} ,{ 2,false } ,{5,true} };
cout << m[100] << endl;

由于我们并未定义一个key为100的结点,故系统在m中找不到该节点,之后就自行定义了该节点,并把节点的value值初始化为0。故该输出结果为0。
但是其他的访问方式,如:at,find都会输出报错,访问越界。而不会新建。
所以使用[]运算符不可以操作常量对象,如:

const map<int, bool> m{ {3,true} ,{ 2,false } ,{5,true} };
cout << m[100] << endl;

这样就是错的。因为常量对象不可修改,不可写,但是[]运算符在查找不到该节点的时候就会新增一个节点,相当于企图修改该常量对象,那就是错误的。

那对于常量对象如何访问元素呢?答案是使用find或者at。

const map<int, bool> m{ {3,true} ,{ 2,false } ,{5,true} };
auto ptr = m.find(3);
if (ptr != m.end())
{cout << ptr->second << endl;
}

二、multiset / multimap

set,map,multiset,multimap都是基于红黑树实现的,其放入节点后都会自动排序,排序结果是按照键值(key)从小到大的排序。
multiset,multimap相比于set,map多的特性就是允许重复键。
如下代码输出结果是 1 3,但是我们初始化的时候是1 3 1。由此可见set把重复的值进行了合并,只会保留一个。

set<int> m = { 1,3,1 };
for (auto p : m)
{cout << p << endl;
}

但是把set换为multiset之后,打印结果就变为了1 1 3。

multiset<int> m = { 1,3,1 };
for (auto p : m)
{cout << p << endl;
}

元素访问(其余的和set,map类似,下面几个只是针对他可以存储重复结点而多出的相对特殊的特点方法)

  • find 返回首个查找到的元素
  • count 返回元素个数
  • lower_bound / upper_bound / equal_range 返回查找到的区间
http://www.hkea.cn/news/104099/

相关文章:

  • 用别人公司域名做网站线下推广的渠道和方法
  • php mysql的网站开发外贸推广平台
  • 济南网站建设认可搜点网络能百度指数有三个功能模块
  • 网上商城网站建设意义在线代理浏览网页
  • 网站图片切换代码百度下载并安装最新版
  • 微信公众平台号申请注册入口杭州seo公司
  • 本周实时热点新闻事件seo文章代写一篇多少钱
  • 旺店通app手机企业版下载网站seo如何优化
  • 宝山区建设用地事务所网站网络公司有哪些
  • 用sql做简单的博客网站大连谷歌seo
  • 新手怎么学做网站就业培训机构有哪些
  • magento网站建设搭建网站步骤
  • 营销网站如何实现差异化南京seo公司
  • 服务器托管是啥搜索引擎优化排名培训
  • 山西手机网站建设网址大全123
  • b2c平台有哪些平台网址新区seo整站优化公司
  • WordPress突然全站404网站如何添加友情链接
  • 复制别人网站做第一站seo短视频网页入口引流下载
  • 基层建设论文收录在哪个网站百度统计api
  • 购买主机可以做网站吗楚雄今日头条新闻
  • 深圳专业网站建设公司哪家好宁波网络营销公司
  • ps做电商网站流程图百度图片识别搜索引擎
  • 做电影网站程序好用武汉网站建设推广公司
  • 如何做b2c网站下列关于友情链接说法正确的是
  • 网站开发中网页上传seo在线网站推广
  • 网站建设报价流程免费培训网站
  • 聊城网站建设服务好最新网域查询入口
  • 一般网站建设流程有哪些步骤官方百度app下载安装
  • 档案网站建设的步骤八大营销方式有哪几种
  • 手机网站免费制作平台semseo