21xrx.com
2024-06-03 01:28:34 Monday
登录
文章检索 我的文章 写文章
C++中的向量删除操作-erase
2023-07-05 12:07:54 深夜i     --     --
C++ 向量 删除操作 erase函数

在C++中,向量是一种被广泛使用的标准模板库容器。向量是一种动态数组,可以在运行时添加、删除元素。使用向量的一个常见操作之一是删除元素,可以使用erase()函数来实现。

erase()函数的语法如下:


vector_name.erase(iterator);

vector_name.erase(iterator_begin, iterator_end);

第一种语法中,erase()函数将删除迭代器指向的元素。第二种语法中,erase()函数将删除指定范围内的所有元素。例如,以下代码将创建一个包含5个元素的整数向量并将迭代器指向第三个元素:


#include <iostream>

#include <vector>

using namespace std;

int main() {

  // 创建一个整数向量并添加元素

  vector<int> vec 3;

  

  // 获取迭代器并删除第三个元素

  auto it = vec.begin() + 2;

  vec.erase(it);

  // 输出剩余的元素

  for(int i=0; i<vec.size(); i++){

    cout << vec[i] << " ";

  }

  return 0;

}

运行上述代码将输出以下结果:


1 2 4 5

在执行erase()函数之后,向量vec的第三个元素将被删除,向量大小也将减小。通过循环遍历向量,我们可以看到删除成功。

需要注意的是,当向量中存在指向元素的指针或句柄时,删除元素可能会导致内存泄漏或访问违例。在删除元素之前,请确保所有指向该元素的指针或句柄已被正确释放。

  
  

评论区

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