全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年重庆建筑工程职业学院单招(计算机)考试备考题库附答案
- 2026年苏州托普信息职业技术学院单招综合素质考试题库附答案
- 2026年湖南财经工业职业技术学院单招(计算机)考试备考题库及答案1套
- 2026年山东文化产业职业学院单招职业技能测试题库附答案
- 2026年三亚航空旅游职业学院单招职业技能测试模拟测试卷附答案
- 2026年惠州工程职业学院单招综合素质考试模拟测试卷附答案
- 2025年全国大学生百科知识竞赛题库及答案(230题)
- 2026年潍坊环境工程职业学院单招职业倾向性测试题库附答案
- 2026年常德科技职业技术学院单招职业适应性测试模拟测试卷附答案
- 2026年江西理工大学辅导员招聘备考题库附答案
- 洁净车间管理培训
- 2025工程管理专业论文题目选题参考
- 2026届新高考数学冲刺突破复习 解析几何
- 红楼梦林黛玉葬花课件
- 有线通信基础课件
- 2025年数据合规专员招聘面试参考题库及答案
- 银行系统风险防控案例分析
- 护理部信息化管理方案
- 雨课堂在线学堂《信息素养-学术研究的必修课》作业单元考核答案
- 2025年10月江苏省农业融资担保有限责任公司招聘11人考试笔试备考试题及答案解析
- 财务管理记账工作表格模板
评论
0/150
提交评论