



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C+中map容器的说明和使用技巧C+中map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值。一、map的说明1头文件#include2定义mapmy_Map;或者是typedefmapMY_MAP;MY_MAPmy_Map;3插入数据(1)my_Mapa=1;(2)my_Map.insert(map:value_type(“b”,2);(3)my_Map.insert(pair(“c”,3);(4)my_Map.insert(make_pair(“d”,4);4查找数据和修改数据(1)inti=my_Mapa;my_Mapa=i;(2)MY_MAP:iteratormy_Itr;my_Itr.find(“b”);intj=my_Itr-second;my_Itr-second=j;不过注意,键本身是不能被修改的,除非删除。5删除数据(1)my_Map.erase(my_Itr);(2)my_Map.erase(“c”);还是注意,第一种情况在迭代期间是不能被删除的,道理和foreach时不能删除元素一样。6迭代数据for(my_Itr=my_Map.begin();my_Itr!=my_Map.end();+my_Itr)7其它方法my_Map.size()返回元素数目my_Map.empty()判断是否为空my_Map.clear()清空所有元素可以直接进行赋值和比较:=,=,=,!=等等更高级的应用查帮助去吧,_;二/map的举例要求: 将mymap中itemstruct的a大于100的项删除structitemstructinta;charb20;mapmymap.解答1:#include#include#includeusingnamespacestd;typedefstructitemstructinta;charb20;itemS;itemSs4=102,”what”,33,”hello”,198,”world”,45,”c+”;intmain()mapmymap;stringstr4=“1st”,”2nd”,”3rd”,”4th”;for(inti=0;i4;i+)mymap.insert(make_pair(stri,si);map:iteratorit;for(it=mymap.begin();it!=mymap.end(); it+)if(it-second.a 100)i=mymap.erase(it);正确mymap.erase(it);it失效./first是Key, second是value;for(it = mymap.begin();it!=mymap.end(); it+)coutfirst”second.a”second.bendl;system(“pause”);return0;解答2:#include#include#include#include#includeusingnamespacestd;structitemstructinta;charb20;itemstruct(intt,char*str)a=t;strcpy(b,str);intmain()mapmymap;mymap.insert(make_pair(“a”,itemstruct(10,”hanzhou”);mymap.insert(make_pair(“ab”,itemstruct(20,”fuzhou”);mymap.insert(make_pair(“abc”,itemstruct(30,”zhengzhou”);mymap.insert(make_pair(“abcd”,itemstruct(200,”wuhan”);mymap.insert(make_pair(“abcde”,itemstruct(150,”kunming”);mymap.insert(make_pair(“abcdef”,itemstruct(50,”xiamen”);map:iteratorit=mymap.begin();while(it!=mymap.end()if(it-second).a100)mymap.erase(it+);elseit+;it=mymap.begin();while(it!=mymap.end()coutfirst”second).a”second).bendl;it+;system(“PAUSE”);return0;解答3:for(map:iteratori=mymap.begin();i!=mymap.end();)if(i-second.a100)i=mymap.erase(i);else+i;解答4: VC6中编译map编译出错的解决方法Warnings similar to the following are generated even if you use the warning pragma to disable the warning: warning C4786: std:rb_treeCAiSpanningTreeState,std:less:TransClosureNode, CAiSpanningTreeState,std:less:TransClosureNode,std:identCai SpanningTreeState,std:less:TransClosureNode,CAiSpanningTreeS tate,std:less:TransClosureNode,std:lessCAiSpanningTreeStat e,std:less:TransClosureN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国细致活力防皱眼霜市场调查研究报告
- 2025年中国真空床垫市场调查研究报告
- 2025年中国李树苗市场调查研究报告
- 2025年中国无镀铜实芯焊丝市场调查研究报告
- 2025年中国带充电探照灯市场调查研究报告
- 2025年中国六角型彩砖塑料模具市场调查研究报告
- 车辆号牌使用权纠纷调解处理合同
- 2025秋部编版(2024)八年级上册历史上课课件 第1课 鸦片战争
- 股权激励财务顾问合作协议书
- 小商品城公司深度报告:产业集群实现“买卖全球”多轮驱动价值重估
- 小学生小升初中自荐信5篇
- 职场基本功:累死你的不是工作是工作方法
- 新生儿窒息的急救及护理
- JJG 7-2004直角尺
- GB/T 26121-2010可曲挠橡胶接头
- GB/T 22184-2008谷物和豆类散存粮食温度测定指南
- GB/T 21650.2-2008压汞法和气体吸附法测定固体材料孔径分布和孔隙度第2部分:气体吸附法分析介孔和大孔
- GB/T 16917.1-2014家用和类似用途的带过电流保护的剩余电流动作断路器(RCBO)第1部分:一般规则
- 烧录原理与方法介绍-基础篇
- 广工计算机专业离散数学考试题,广东工业大学-离散数学试卷和答案A
- 儿童1型糖尿病标准化诊断与治疗专家共识(最全版)
评论
0/150
提交评论