vector元素删除

原创 2013年12月03日 14:44:02

vector成员函数pop_back()删掉最后一个元素,而函数erase()可以用来删掉有一个iterator指出的元素,也可以删掉一个范围的元素,代码如下:

#include <vector>
#include <iostream>
using namespace std;
void main (void) {  
vector<int> vector1;   // define a vector of integers
    for (int i = 0; i < 10; ++i)  
vector1.push_back(i);
    cout << "vector contains " << vector1.size() << " elements" << endl;
    vector1.pop_back();     // erase the last element 9
    cout << "vector contains " << vector1.size() << " elements" << endl;
    vector1.erase(vector1.begin());  // erase the first element (1) using an iterator
    cout << "vector contains " << vector1.size() << " elements" << endl;
    vector1.erase(vector1.begin(), vector1.end());  // erase all the remaining elements
    cout << "vector contains " << vector1.size() << " elements" << endl;
}

另外,如果为list容器,因为内存不是连续的,则只能重载++或者--,所以要指定删除某一个元素的时候不能vector::iterator p=vector::begin()+1什么的!

vector::erase() vector中如何删除元素?

vector::erase() vector中如何删除元素?
  • duan19920101
  • duan19920101
  • 2016年02月22日 16:38
  • 18029

vector中清除某个元素方法(erase)

给一个vector对象,如何实现遍历一个删除一个。这个问题主要考察vector的erase函数。 erase函数的声明如下: iterator erase(iterator_Where); it...
  • xudacheng06
  • xudacheng06
  • 2011年09月05日 14:27
  • 7679

vector如何删除指定索引位置的元素?

例如删除vector中第5个位置的元素 vector   vec;    //执行vector初始化操作 //获取第五个元素的iterator vector::iterator  ...
  • Plutus_Lee
  • Plutus_Lee
  • 2012年10月30日 16:14
  • 3881

从std::vector中移除指定元素的方法

#include #include #include typedef int MyType; using namespace std; int main() { std::vector ...
  • u012861978
  • u012861978
  • 2016年04月22日 16:40
  • 4478

vector中删除一个元素

例如: class classA { public: int e; } vector; class_vector; 如果要删除第三个,似乎只能按着下面这个方式进行 class_ve...
  • djf_1985
  • djf_1985
  • 2012年05月11日 10:23
  • 9316

vector中特定元素的删除

std::vector没有直接删除特定值元素的成员方法。所以必须使用remove算法:std::vector coll;...//remove all elements with value valc...
  • jq0123
  • jq0123
  • 2007年05月14日 13:44
  • 5982

C++ vector 之 erase 多个元素的两种常用方法

这是一个古老的话题,今天拿来再炒一下,原因是我又用错了。 查阅各种 comments 以及根据我自己的使用经验,当在 vector 中 查找并连续删除 其中多个元素时,我发现主要有两种方法: //...
  • DavyHwang
  • DavyHwang
  • 2013年03月12日 15:40
  • 6637

vector容器添加和删除元素

clear() 清空所有元素 empty() 判断Vector是否为空(返回true时为空) erase() 删除指定元素 (可以用指针来代替迭代器)  iterator erase( iterato...
  • Qingqinglanghua
  • Qingqinglanghua
  • 2009年12月18日 15:58
  • 60848

vector如何删除指定索引位置的元素

1、remove并不是删除,仅仅是移除,要加上erase才能完成删除。 2、remove并不是删除指定位置的元素,而移除所有指定的元素。 3、用algorithm代替成员函数不是一个好的选择。...
  • zmr1991
  • zmr1991
  • 2014年12月24日 18:11
  • 2268

删除vector中元素高效的方法

高效的删除vector中的数据
  • woshizfs
  • woshizfs
  • 2014年06月21日 09:03
  • 1074
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:vector元素删除
举报原因:
原因补充:

(最多只允许输入30个字)