首页 > 后端开发 > C++ > 正文

如何在 C 中按值从向量中删除元素?

DDD
发布: 2024-11-08 15:05:02
原创
254 人浏览过

How to Remove Elements from a Vector by Value in C  ?

如何在 C 中按值删除向量元素

考虑包含值 {5, 9, 2, 8, 0 的向量 myVector , 7} 按顺序。要擦除通过其位置保存值“8”的元素,可以使用:

myVector.erase(myVector.begin() + 4); // Erase the 4th element
登录后复制

或者,要直接基于值“8”进行擦除,可以使用 std::remove()函数:

#include <algorithm>

int main() {
  std::vector<int> vec{5, 9, 2, 8, 0, 7};
  vec.erase(std::remove(vec.begin(), vec.end(), 8), vec.end());
  return 0;
}
登录后复制

在这种情况下,std::remove() 对元素重新排序,将“8”移动到向量的末尾,然后有效地擦除()删除移动的元素。这种方法被称为“擦除-删除习惯用法”。

以上是如何在 C 中按值从向量中删除元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板