21xrx.com
2024-12-22 21:38:51 Sunday
登录
文章检索 我的文章 写文章
C++中vector的erase方法使用说明
2023-07-03 01:17:31 深夜i     --     --
C++ vector erase方法 使用说明

在C++中,vector是一个非常常用的容器,它可以方便的存储数据,并且具有快速的插入和删除操作。其中的erase方法就是用来删除vector中元素的方法,下面就来介绍一下它的使用说明。

vector的erase方法有两种重载方式,分别是:

1. iterator erase (const_iterator position);

2. iterator erase (const_iterator first, const_iterator last);

第一种方式是删除指定位置的元素,它的参数是一个迭代器,表示要删除的元素的位置。例如,要删除一个vector中的第三个元素,可以这样写:


vector<int> v 2;

auto it = v.begin() + 2;

v.erase(it);

这样,vector中的值就变成了 2,第三个元素被删除成功。

第二种方式是删除指定范围内的元素,它的参数是两个迭代器,表示要删除的元素的起始位置和结束位置。例如,要删除一个vector中的前三个元素,可以这样写:


vector<int> v 4;

auto first = v.begin();

auto last = v.begin() + 3;

v.erase(first, last);

这样,vector中的值就变成了 5,前三个元素被删除成功。

需要注意的是,使用erase方法删除元素后,vector中的元素会自动向前移位,因此在使用迭代器时一定要避免使用被删除元素的迭代器。

此外,vector的erase方法还可以返回一个迭代器,表示被删除元素的下一个元素的位置。例如,在上面的第一种方式中,可以这样写:


vector<int> v 5;

auto it = v.begin() + 2;

it = v.erase(it);

这样,it就变成了指向4这个元素的迭代器。

总之,vector的erase方法是一个非常方便的操作,但需要注意使用时的细节和注意事项。熟练掌握其用法,可以更加高效地处理vector中的数据。

  
  

评论区

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