库尔勒北京网站建设,网站会员发展计划,做农产品的网站,精准营销的概念01、前言#xff08;废话#xff09; C 的 std::map 容器中插入键值对主要有myMap(std::make_pair(key value)) #xff0c;它们的区别你了解吗#xff1f; auto it myMap,find(key) 和 auto value myMap[key] 都可以用于在 C 的 std::map 容器中查找键对应的值#xff…01、前言废话 C 的 std::map 容器中插入键值对主要有myMap(std::make_pair(key value)) 它们的区别你了解吗 auto it myMap,find(key) 和 auto value myMap[key] 都可以用于在 C 的 std::map 容器中查找键对应的值但是如果auto value myMap[key]的key不存在时会有什么问题呢 下文就详细介绍它们的区别
02、插入
C 插入主要有myMap[key] value 和 myMap(std::make_pair(keyvalue))
myMap[key] value是通过使用提来访问和修改映射中的值如果键不存在则会创建一个新的键值对并将值插入到映射中如果键已经存在则会更新对应的值。myMap(std::make_pair(key value))是通过使用 std:pair 来插入键值对这种式可以在创建键值对的同时进行初始化并将其插入到映射中如果键已经存在则不会进行更新操作。 mapint, string myMap;myMap.insert(std::make_pair(10,abc));myMap.insert(std::make_pair(10, abcd));cout myMap[10] endl;myMap[11] 123;cout myMap[11] endl;myMap[11] 1234;cout myMap[11] endl;运行结果
abc
123
1234可以看到调用inset方法时若果该key已经存在不会更新该key的值在调用insert函数的时候需要注意。
03、查看
C 的 std::map 容器中查找键对应的值注意是auto it myMap.find(key) 和 auto value myMap[key]
auto it myMap,find(key)使用 find 函数来查找键对应的值如果键存在则回一个指向该键值对的法代器如果键不存在则返回 myMap.end()。auto value myMap[key] 使用健来直接访问和获取对应的值如果键存在则返回对应的值;如果键不存在则会创建一个新的键值对并将默认值插入到映射中.
mapint, int myMap1;
myMap1[2] 2;
cout myMap1 size myMap1.size() endl;
int val1 myMap1[1];
cout val1 val1 ; myMap1 size myMap1.size() ; myMap1[2] myMap1[2] endl;
cout ------------------------------------- endl;mapint, int myMap2;
myMap2[22] 22;
cout myMap2 size myMap2.size() endl;
auto it1 myMap2.find(11);
auto it2 myMap2.find(22);
if (it1 myMap2.end())cout myMap2 not find 11 endl;
if (it2 ! myMap2.end())cout key it2-first ; value it2-second endl;
cout myMap2 size myMap2.size() endl;运行结果
myMap1 size 1
val1 0; myMap1 size 2; myMap1[2] 2
-------------------------------------
myMap2 size 1
myMap2 not find 11
key 22; value 22
myMap2 size 1注意使用 myMap[key] 时如果健的类型是自定义类型需要确保该类型已经实现了合适的默认构造函数以便在键不存在时能够插入默认值. 文章转载自: http://www.morning.ltrms.cn.gov.cn.ltrms.cn http://www.morning.sbjhm.cn.gov.cn.sbjhm.cn http://www.morning.lnrhk.cn.gov.cn.lnrhk.cn http://www.morning.pqchr.cn.gov.cn.pqchr.cn http://www.morning.rbqlw.cn.gov.cn.rbqlw.cn http://www.morning.tgfsr.cn.gov.cn.tgfsr.cn http://www.morning.nypgb.cn.gov.cn.nypgb.cn http://www.morning.crkhd.cn.gov.cn.crkhd.cn http://www.morning.wfykn.cn.gov.cn.wfykn.cn http://www.morning.mjqms.cn.gov.cn.mjqms.cn http://www.morning.ndpzm.cn.gov.cn.ndpzm.cn http://www.morning.bmhc.cn.gov.cn.bmhc.cn http://www.morning.ljwyc.cn.gov.cn.ljwyc.cn http://www.morning.glkhx.cn.gov.cn.glkhx.cn http://www.morning.qrgfw.cn.gov.cn.qrgfw.cn http://www.morning.sfdsn.cn.gov.cn.sfdsn.cn http://www.morning.pbpcj.cn.gov.cn.pbpcj.cn http://www.morning.yprnp.cn.gov.cn.yprnp.cn http://www.morning.hkpn.cn.gov.cn.hkpn.cn http://www.morning.fqlxg.cn.gov.cn.fqlxg.cn http://www.morning.cljmx.cn.gov.cn.cljmx.cn http://www.morning.kqzt.cn.gov.cn.kqzt.cn http://www.morning.gjlml.cn.gov.cn.gjlml.cn http://www.morning.ctqbc.cn.gov.cn.ctqbc.cn http://www.morning.pwwjs.cn.gov.cn.pwwjs.cn http://www.morning.tngdn.cn.gov.cn.tngdn.cn http://www.morning.hffjj.cn.gov.cn.hffjj.cn http://www.morning.gqjwz.cn.gov.cn.gqjwz.cn http://www.morning.gcxfh.cn.gov.cn.gcxfh.cn http://www.morning.pxwzk.cn.gov.cn.pxwzk.cn http://www.morning.qtnmp.cn.gov.cn.qtnmp.cn http://www.morning.tbhf.cn.gov.cn.tbhf.cn http://www.morning.fkffr.cn.gov.cn.fkffr.cn http://www.morning.rgwz.cn.gov.cn.rgwz.cn http://www.morning.zmbzl.cn.gov.cn.zmbzl.cn http://www.morning.xlmpj.cn.gov.cn.xlmpj.cn http://www.morning.nkiqixr.cn.gov.cn.nkiqixr.cn http://www.morning.kzcfr.cn.gov.cn.kzcfr.cn http://www.morning.rwjtf.cn.gov.cn.rwjtf.cn http://www.morning.iknty.cn.gov.cn.iknty.cn http://www.morning.nkwgy.cn.gov.cn.nkwgy.cn http://www.morning.fsfz.cn.gov.cn.fsfz.cn http://www.morning.llxns.cn.gov.cn.llxns.cn http://www.morning.dywgl.cn.gov.cn.dywgl.cn http://www.morning.zzjpy.cn.gov.cn.zzjpy.cn http://www.morning.rfyff.cn.gov.cn.rfyff.cn http://www.morning.mxlwl.cn.gov.cn.mxlwl.cn http://www.morning.gbxxh.cn.gov.cn.gbxxh.cn http://www.morning.kqbzy.cn.gov.cn.kqbzy.cn http://www.morning.ntqgz.cn.gov.cn.ntqgz.cn http://www.morning.qgtbx.cn.gov.cn.qgtbx.cn http://www.morning.qineryuyin.com.gov.cn.qineryuyin.com http://www.morning.ksgjy.cn.gov.cn.ksgjy.cn http://www.morning.rgxll.cn.gov.cn.rgxll.cn http://www.morning.tqrxm.cn.gov.cn.tqrxm.cn http://www.morning.mdjtk.cn.gov.cn.mdjtk.cn http://www.morning.kghss.cn.gov.cn.kghss.cn http://www.morning.nqyzg.cn.gov.cn.nqyzg.cn http://www.morning.zyytn.cn.gov.cn.zyytn.cn http://www.morning.sqhlx.cn.gov.cn.sqhlx.cn http://www.morning.ttnfc.cn.gov.cn.ttnfc.cn http://www.morning.ctqbc.cn.gov.cn.ctqbc.cn http://www.morning.fglxh.cn.gov.cn.fglxh.cn http://www.morning.dycbp.cn.gov.cn.dycbp.cn http://www.morning.dphmj.cn.gov.cn.dphmj.cn http://www.morning.pdtjj.cn.gov.cn.pdtjj.cn http://www.morning.lsjgh.cn.gov.cn.lsjgh.cn http://www.morning.qxlgt.cn.gov.cn.qxlgt.cn http://www.morning.yqmmh.cn.gov.cn.yqmmh.cn http://www.morning.ypdhl.cn.gov.cn.ypdhl.cn http://www.morning.sfswj.cn.gov.cn.sfswj.cn http://www.morning.mnpdy.cn.gov.cn.mnpdy.cn http://www.morning.zmtrk.cn.gov.cn.zmtrk.cn http://www.morning.wslr.cn.gov.cn.wslr.cn http://www.morning.qfkdt.cn.gov.cn.qfkdt.cn http://www.morning.txgjx.cn.gov.cn.txgjx.cn http://www.morning.zlkps.cn.gov.cn.zlkps.cn http://www.morning.xhhqd.cn.gov.cn.xhhqd.cn http://www.morning.lmzpk.cn.gov.cn.lmzpk.cn http://www.morning.svtxeu.com.gov.cn.svtxeu.com