很多初学者可能会写出如下错误代码错误示范:删除nums里面的1
std::vector<int> nums= {1, 2, 3, 4}; for (std::vector<int>::iterator it = nums.begin(); it != nums.end(); it++) { if (*it == 1) { nums.erase(it); } }
这样写就说明大家对erase的用法不清楚而导致的,erase用法如下
正确的写法
for (std::vector<int>::iterator it = nums.begin(); it != nums.end();) { if (*it == 1) { it = nums.erase(it); } else { ++it; } }
删除vector中的元素
原创
©著作权归作者所有:来自51CTO博客作者嘿克不黑的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:二维图形旋转公式的推导

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
python优雅遍历字典删除元素
Python基础知识
删除元素 Python 简洁性 -
vector中特定元素的删除
std::vector没有直接删除特定值元素的成员方法。所以必须使用remove算法:std::
vector iterator 算法 显式 迭代器