21xrx.com
2024-12-22 23:29:39 Sunday
登录
文章检索 我的文章 写文章
C++ Erase函数的用法
2023-06-22 19:48:04 深夜i     --     --
C++ Erase函数 用法

C++中的Erase函数是一个十分常用的函数,可以用来从一个容器中删除指定的元素。这个函数可以用于vector、list、set等多种容器。在使用Erase函数时,我们需要提供一个迭代器,指明要删除的元素。下面将详细介绍Erase函数的用法。

定义

Erase函数的定义如下:


iterator erase( const_iterator pos );

iterator erase( const_iterator first, const_iterator last );

第一个重载函数接受一个const_iterator类型的参数,指向要删除元素的位置,返回值为一个iterator类型的迭代器,指向最后一个被删除元素的下一位。

第二个重载函数接受两个const_iterator类型的参数,第一个参数指向要删除的第一个元素,第二个参数指向要删除的最后一个元素的下一位,返回值为一个iterator类型的迭代器,指向最后一个被删除元素的下一位。

使用

下面是Erase函数的使用示例:


std::vector<int> vec 4;

vec.erase(vec.begin() + 2); // 删除第3个元素

for (auto i : vec)

  std::cout << i << " "; // 1 2 4 5

std::cout << std::endl;

vec.erase(vec.begin() + 1, vec.begin() + 3); // 删除第2到第4个元素

for (auto i : vec)

  std::cout << i << " "; // 1 5

std::cout << std::endl;

在上面的例子中,我们先定义了一个vector容器,其中包含1到5这5个元素。接着,我们使用了Erase函数删除了第3个元素和第2到第4个元素。在每次删除之后,我们都使用for循环遍历容器中的元素,并打印输出。

总结

Erase函数是一个非常常用的函数,可以用来删除STL容器中的元素。在使用Erase函数时,我们需要提供一个迭代器,指明要删除的元素。需要注意的是,Erase函数会改变容器的大小,要谨慎使用。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复
    相似文章