当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ Deque erase()用法及代码示例


C++ Deque erase() 函数从指定的位置或范围删除元素,这有效地减少了删除元素数量的双端队列的大小。

用法

iterator erase(iterator pos);
iterator erase(iterator first,iterator last);

参数

pos: 它定义了要从双端队列中移除元素的位置。

(first,last):定义了deque内要删除元素的范围。

返回值

它返回一个迭代器,指向被函数移除的最后一个元素之后的元素。

例子1

让我们看一个在范围内删除元素时的简单示例。

#include <iostream>
#include<deque>
using namespace std;
int main()
{
    deque<int> d={1,2,3,4};
    deque<int>::iterator itr;
    cout<<"Content of deque:";
    for(itr=d.begin();itr!=d.end();++itr)
    cout<<*itr<<" ";
    cout<<'\n';
    d.erase(d.begin()+1,d.begin()+2);
    cout<<"After erasing second and third element,Content of deque:";
    for(itr=d.begin();itr!=d.end();++itr)
    cout<<*itr<<" ";
    return 0;
}

输出:

Content of deque:1 2 3 4 
After erasing second and third element,Content of deque:1 3 4 

例子2

看一个简单的例子,在指定位置移除元素

#include <iostream>
#include<deque>
using namespace std;
int main()
{
    deque<string> str={"mango","apple","strawberry","kiwi"};
    deque<string>::iterator itr;
    cout<<"Content of deque:";
    for(itr=str.begin();itr!=str.end();++itr)
    cout<<*itr<<" ,";
    str.erase(str.begin()+2);
    cout<<'\n';
      cout<<"Now,Content of deque:";
     for(itr=str.begin();itr!=str.end();++itr)
    cout<<*itr<<" ,";
    return 0;
}

输出:

Content of deque:mango ,apple ,strawberry ,kiwi ,
Now,Content of deque:mango ,apple ,kiwi ,




相关用法


注:本文由纯净天空筛选整理自 C++ Deque erase()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。