C++怎么删除map容器中指定值的元素
这篇文章给大家分享的是有关C++怎么删除map容器中指定值的元素的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
创新互联服务项目包括正蓝网站建设、正蓝网站制作、正蓝网页制作以及正蓝网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,正蓝网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到正蓝省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
一、map容器下的方法说明
由于map容器下的方法较多,这里只列举代码中用到的几个方法:
insert()方法:
//插入val到pos的后面,然后返回一个指向这个元素的迭代器 iterator insert( iterator pos, const pair&val ); //插入start到end的元素到map中 void insert( input_iterator start, input_iterator end ); //只有在val不存在时插入val。返回值是一个指向被插入元素的迭代器和一个描述是否插入的bool值 pair insert( const pair &val );
erase()方法:
//erase()函数删除在pos位置的元素,或者删除在start和end之间的元素,或者删除那些值为key的所有元素 void erase( iterator pos ); void erase( iterator start, iterator end ); size_type erase( const KEY_TYPE &key );
iterator迭代器。
二、删除map容器中指定的字符串
下面代码中map容器的value对应的是一个string类型的指针,在初始化时类似于string *p = new string("123");
。
/** * @FileName map_del_str.cpp * @Describe A simple example for deleting an element of string in map. * @Author vfhky 2016-06-26 10:26 https://typecodes.com/cseries/mapdelintstring.html * @Compile g++ map_del_str.cpp -o map_del_str * @Reference */ #include#include
效果如下图所示:
三、删除map容器中指定的整型数据
下面代码中map容器的value对应的是一个int数据,在初始化时可以直接使用map1[i] = i
语句。
/** * @FileName map_del_int.cpp * @Describe A simple example for deleting an element of interger in map. * @Author vfhky 2016-06-26 10:26 https://typecodes.com/cseries/mapdelintstring.html * @Compile g++ map_del_int.cpp -o map_del_int * @Reference */ #include#include
效果如下图所示:
四、附录
STL容器分顺序容器Sequence Container(包含vector,deque,list容器)和关联容器Associative Container(包含set,multiset,map,multimap容器)。C++标准中,Sequence Container的erase函数会返回iterator,但Associative Container不返回iterator。所以在小节2、小节3中使用map1.erase(it++)
而不是直接map1.erase(it)
。
感谢各位的阅读!关于“C++怎么删除map容器中指定值的元素”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
本文标题:C++怎么删除map容器中指定值的元素
浏览地址:http://azwzsj.com/article/pphije.html