当前位置:  开发笔记 > 编程语言 > 正文

C++ STL map ::擦除不存在的键

如何解决《C++STLmap::擦除不存在的键》经验,为你挑选了2个好方法。

关于C++ STL地图,按键删除: -

 size_type map::erase ( const key_type& x );

擦除不存在的密钥是否合法?即下面的片段好吗?

map mymap;
mymap['c']=30;
mymap.erase('c');
mymap.erase('c');
mymap.erase('D');

干杯



1> rlbond..:

是的,实际上,std::map::erase()返回一个size_type,表示擦除的键数.因此,它返回0表示没有擦除,1表示擦除地图的内容.



2> brian-brazil..:

这很好,mymap.erase('D')在这种情况下将返回0.

请参阅http://www.cplusplus.com/reference/stl/map/erase.html

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有