21xrx.com
2024-11-22 06:31:32 Friday
登录
文章检索 我的文章 写文章
C++如何删除vector中指定元素
2023-07-13 04:27:53 深夜i     --     --
C++ 删除 vector 指定元素

在C++编程中,vector(向量)是一种非常有用的容器,可以用来存储一系列的元素。但是,有时候我们需要删除vector中的某些元素,以保持容器中元素的有效性和一致性。本篇文章将介绍如何在C++中删除vector中指定元素。

在C++中,vector提供了两种删除元素的方法,即使用erase()函数和使用remove()函数。本文将分别介绍这两种方法。

第一种方法:使用erase()函数

erase()函数可以删除vector中指定位置的元素或者指定范围内的元素。使用erase()函数删除指定元素的步骤如下:

1. 定义一个vector容器并向其中添加元素;

2. 使用erase()函数删除指定元素;

3. 输出删除元素后的vector容器。

下面是一个示例代码:


#include <iostream>

#include <vector>

using namespace std;

int main()

{

  vector<int> v 4;  //定义一个vector容器,并向其中添加元素

  int target = 3;          //需要删除的元素

  for (vector<int>::iterator it = v.begin(); it != v.end(); ++it) {

    if (*it == target) {        //找到目标元素位置

      v.erase(it);         //使用erase()函数删除指定元素

      break;               //删除完之后跳出循环

    }

  }

  for (int i = 0; i < v.size(); i++) {    //输出删除元素后的vector容器

    cout << v[i] << " ";

  }

  return 0;

}

输出结果为:1 2 4 5

第二种方法:使用remove()函数

remove()函数可以删除vector中指定元素的所有出现。使用remove()函数删除指定元素的步骤如下:

1. 定义一个vector容器并向其中添加元素;

2. 使用remove()函数删除指定元素;

3. 使用erase()函数删除重复元素;

4. 输出删除元素后的vector容器。

下面是一个示例代码:


#include <iostream>

#include <vector>

#include <algorithm>

using namespace std;

int main()

{

  vector<int> v 2;  //定义一个vector容器,并向其中添加元素

  int target = 3;          //需要删除的元素

  v.erase(remove(v.begin(), v.end(), target), v.end()); //使用remove()函数删除指定元素

  for (int i = 0; i < v.size(); i++) {         //输出删除元素后的vector容器

    cout << v[i] << " ";

  }

  return 0;

}

输出结果为:1 2 4 5

通过以上两种方法,我们可以轻松地删除vector中的指定元素。在实际应用中,我们可以根据需求选择合适的方法来进行元素的删除操作。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复