《CPrimer》学习笔记map容器insert操作的使用.doc

上传人:scccc 文档编号:13615231 上传时间:2022-01-20 格式:DOC 页数:3 大小:28KB
返回 下载 相关 举报
《CPrimer》学习笔记map容器insert操作的使用.doc_第1页
第1页 / 共3页
《CPrimer》学习笔记map容器insert操作的使用.doc_第2页
第2页 / 共3页
《CPrimer》学习笔记map容器insert操作的使用.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《《CPrimer》学习笔记map容器insert操作的使用.doc》由会员分享,可在线阅读,更多相关《《CPrimer》学习笔记map容器insert操作的使用.doc(3页珍藏版)》请在三一文库上搜索。

1、C+ Primer 学习笔记:map容器insert 操作的使用 读入的单词出现的次数编写程序统计并输出所map容器中含有一个或一对迭代器形参的 到容器中,而单个参数版本中则会返回in sert函数版本并不说明是否有或有多少个元素插入pair类型对象:m.insert(e)e是一个用在 m上的value_type 类型的值。如果键 (e.first) 不在m中,则插入一个值为e.second的新元素;如果该键在m中已存在,则保持 m不变。该函数返回一个pair类型对象,包含指向键为 e.first的元素的map迭代器,以及一个bool类型的对象,表示 是否插入了该元素。感觉这里insert的使

2、用比较难懂,记下以免忘记编写程序统计并输岀所读入的单词岀现的次数view sourcepri nt?01 #in clude 02 #in clude 03 #in clude 0405 using namespacestd;0607 i nt08 09101112mai n()stri ng word;map word_co unt;while(ci n word)1314pairmap:iterator,bool pword_coun t.i nsert(make_pair(word,1);1516171819 20if(p.sec ond = false)+p.first-seco nd

3、;21for(map:iteratorflag=word_co un t.begi n();flag!=word_cou nt.e nd();flag+)22cout first sec ond :iterator,bool p =word_co un t.i nsert(make_pair(word,1);p为pair类型变量,第一个元素为 mapvstring,int容器的迭代器,第二个元素为bool类型。insert 操作在 word_count容器中加入一个键为string word ,值为int 1 的对象;insert 操作返回pair赋给p,贝U p的第一个元素迭代器指向的键为s

4、tring word,且当word在word_count 中不存在时 p的第二个元素为 true,存在时为false。后面的语句if(p.second = false)即判断当 word在word_count中存在时,执行if语句内操作。view sourcepri nt?1 +p.first-sec ond;这里的语句可以拆分为view sourcepri nt?1 +(*(p.first).seco nd);p.first为指向word_count容器内键为string word对象的迭代器,对其解引用得到word_count容器内键为string word的对象,该对象类型为map:valut_type。value_type 为 pair 类型,对该对象执行 .second 得到第二个元素类型为int,在该程序内即为 word岀现的数量。最后对该 int类型的第二元素执行自增 操作。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1