21xrx.com
2024-11-08 21:16:59 Friday
登录
文章检索 我的文章 写文章
C++中vector容器的erase用法
2023-07-05 15:43:04 深夜i     --     --
C++ vector 容器 erase 用法

C++中,vector容器是一个十分常用的容器,它可以动态存储元素,支持访问和修改任意元素,还可以进行常见的容器操作,如插入、删除等。本文将介绍vector容器中erase函数的用法。

erase函数是vector容器内置的删除元素的函数,其可以删除vector容器中指定位置或指定范围的元素。erase函数的用法有以下两种:

1. erase(iterator position)

该函数用于在指定位置删除一个元素,其中iterator为迭代器类型,position为待删除的元素的位置。例子如下:


vector<int> vec 2;

auto it = vec.begin() + 2;

vec.erase(it);

//此时vec为 4

2. erase(iterator first, iterator last)

该函数用于在指定范围内删除元素,其中iterator为迭代器类型,first和last是范围的起始和结束位置。在删除过程中,[first, last)中的所有元素都将被删除。例子如下:


vector<int> vec 2;

auto first = vec.begin() + 1;

auto last = vec.begin() + 3;

vec.erase(first, last);

//此时vec为 5

需要注意的是,在使用erase函数时,一定要保证待删除的元素或范围在vector容器内,否则会发生undefined behavior(未定义行为)。

总之,erase函数是vector容器中删除元素的核心函数之一,其用法简单,但有一定的注意事项。了解erase函数的用法,将使程序员更加愉快地使用vector容器,并能写出更好的C++代码。

  
  

评论区

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