`
java-mans
  • 浏览: 11428086 次
文章分类
社区版块
存档分类
最新评论

c++ 容器删除操作

 
阅读更多

学IT的,废话少说,直接看代码。

#include<iostream>
#include<vector>
#include<list>
using namespace std;
int main(){
int a[]={1,2,3,4,5,6,7,8,9,10};
vector<int>v(a,a+10);
list<int>l(a,a+10);

for(vector<int>::iterator vi=v.begin();vi!=v.end();++vi){
if((*vi)%2==0){
vi=v.erase(vi);
--vi;
}
}

for(list<int>::iterator li=l.begin();li!=l.end();++li){
if((*li)%2==1){
li=l.erase(li);
--li;
}
}

for(vector<int>::iterator vv=v.begin();vv!=v.end();++vv){
cout<<*vv<<" ";
}
cout<<endl;
for(list<int>::iterator ll=l.begin();ll!=l.end();++ll){
cout<<*ll<<" ";
}
cout<<endl;
return 0;
}

erase(指向需要删除的值的迭代器),返回指向被删除元素的下一个元素的迭代器。

分享到:
评论

相关推荐

    c++之vector容器erase操作

    c++之vector容器erase操作,在容器列表中删除中间一行的操作过程,代码分为一维容器和二维容器操作两部分,详细见代码

    C++中的哈希容器unordered_map使用示例

    很久以来,STL中都只提供作为存放对应关系的容器,内部通常用红黑树实现,据说原因是二叉平衡树(如红黑树)的各种操作,插入、删除、查找等,都是稳定的时间复杂度,即O(log n);但是对于hash表来说,由于无法避免...

    深入解析C++ STL中的常用容器

    STL是C/C++开发中一个非常重要的模板,而其中定义的...由于具有连续的存储空间,所以在插入和删除操作方面,效率比较慢。vector有多个构造函数,默认的构造函数是构造一个初始长度为0的内存空间,且分配的内存空间是以2

    C++课程小作业-STL容器与迭代器的实现路径-设计类vector容器myVector

    STL是高效的C++程序库,是大量类模板和函数模板的聚集,主要的组成部分包括容器、迭代器、算法、函数等。其中容器是存放对象的集合,使用类模板方式; 选代器是容器与算法的粘合剂,是所谓的泛型指针, 使用类模板方式...

    Linux下C++操作mysql和redis数据库的封装

    包含了mysql常用的增删改查操作,支持容器数据添加,各种模板数据添加,支持单行增加删除,单行数据修改,多行数据增加删除,多行数据修改,清空表格,多条件查询,多条件删除等等很多便捷的操作,插入和删除数据快...

    C++中list用法

    C++中list用法,list的用法,链表的添加删除操作,容器的使用

    C++ Primer第四版【中文高清扫描版】.pdf

    9.2.2 使迭代器失效的容器操作 271 9.3 顺序容器的操作 272 9.3.1 容器定义的类型别名 272 9.3.2 begin和end成员 273 9.3.3 在顺序容器中添加元素 273 9.3.4 关系操作符 277 9.3.5 容器大小的操作 278 9.3.6 访问...

    简易企业信息管理系统emis(c++)

    系统用到的知识点有C++的文件操作,容器vector的使用,类的封装,继承,多态等。 系统是用标准C++完成的控制台程序。对于数据的存储没有用数据库,而是用文件流的方式。初学者可以自己将系统修改为数据库方式存储...

    C++Primer视频(中级)下载地址

    第9章 9.3 顺序容器的操作(1) 9.第9章 9.3 顺序容器的操作(2) 10.第9章 9.3 顺序容器的操作(3) 11.第9章 9.3 顺序容器的操作(4) 12.第9章 9.3 顺序容器的操作(5) 13.第9章 9.3 顺序容器的操作(6) 14.第9...

    《C++编程艺术》教程+代码

    非常优秀的C++教材,并且附有源码。 目 录 第1章 C++的功能 1 1.1 简洁而丰富的语法 1 1.2 功能强大的库 2 1.3 STL 2 1.4 程序员控制一切 3 1.5 细节控制 3 1.6 运算符重载 3 1.7 一种简洁精练的对象模型 4 1.8 C++...

    C++ 链表 学生类 班级类

    C++写的,用链表创建。学生类和班级类。有对链表的创建,插入,删除等操作!

    C++ vector容器实现贪吃蛇小游戏

    创建一个vector容器,容器内存储蛇的每节身体的结构变量,结构变量中保存蛇身体的xy坐标,通过使用vector成员方法不断添加和删除容器中的数据,实现蛇坐标的规律移动,吃到食物等时执行对应操作。 在代码注释中标注...

    C++课程大作业-采用面向对象的编程思想+STL 容器实现学生管理系统C++源码(含详细注释+项目说明).zip

    C++课程大作业-采用面向对象的编程思想+STL 容器实现学生管理系统C++源码(含详细注释+项目说明).zip 基于C++的学生管理系统,采用了面向对象的编程思想,加入STL 容器。 实现学生信息管理系统 信息存储:存储在...

    基于C++的线程安全容器 .zip

    包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。 包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python...

    c++ STL之list对结构体的增加,删除,排序等操作详解

    对STL中的list进一步学习,编程过程中对结构体的操作很多。 全部代码如下: /* Project:list对结构体的使用 Date: 2018/07/14 Author: Frank Yu 常用函数:int size() 返回容器元素个数;bool empty() 判断容器...

    C++ Primer中文版(第5版)李普曼 等著 pdf 1/3

     9.3.6 容器操作可能使迭代器失效 315  9.4 vector对象是如何增长的 317  9.5 额外的string操作 320  9.5.1 构造string的其他方法 321  9.5.2 改变string的其他方法 322  9.5.3 string搜索操作 325  9.5.4 ...

    C++中关于set删除的一些坑

    我在一个函数中调用了set的erase操作来删除某个迭代器,函数的传入参数为要删除的迭代器,类似如下 set&lt;int&gt; aha; void del(set&lt;int&gt;::iterator it) { //一顿操作 aha.erase(it); } 然后我在main中想要删除一个...

    C++Primer(第5版 )中文版(美)李普曼等著.part2.rar

     9.3.6 容器操作可能使迭代器失效 315  9.4 vector对象是如何增长的 317  9.5 额外的string操作 320  9.5.1 构造string的其他方法 321  9.5.2 改变string的其他方法 322  9.5.3 string搜索操作 325  9.5.4 ...

    c++ Effective STL(中文+英文)

    条款3: 使容器里对象的拷贝操作轻量而正确 条款4: 用empty来代替检查size是否为0 条款5: 尽量使用范围成员函数代替他们的单元素兄弟 条款6: 警惕C++的及其令人恼怒的分析 条款7: 当使用new得指针的容器时,切记...

Global site tag (gtag.js) - Google Analytics