开发者社区> 技术mix呢> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

c++删除容器中的奇数

简介:
+关注继续查看

出自

c++ primer(4th)282页,26题

题意

数组ia[]={0,1,1,2,3,5,8,13,21,55,89};把ia复制到一个list容器中。使用单个迭代器参数版本的erase()函数将list容器中的奇数元素值删掉。

代码

复制代码
#include <iostream>
#include <list>
using namespace std;
int main()
{
    int ia[] = {0,1,1,2,3,5,8,13,21,55,89};
    list<int> ilist(ia, ia+11);
    list<int>::iterator beg = ilist.begin();
    for(;beg!=ilist.end();)
    {
        cout << *beg << " " << *beg % 2 << endl;
        if(1 == (*beg % 2))
            beg = ilist.erase(beg);
        else
            ++beg;
    }
    for(beg=ilist.begin(); beg!=ilist.end(); beg++)
        cout << "UU:" << *beg << endl;
    cout << ilist.size() << endl;
}
复制代码

说明几点
1. 指针就是迭代器

2.容器初始化的一种方式就是:C c(beg, end)——C为容器类型名如,list;c为自己建立的容器名,如ilist;beg,end为容器的初始迭代器(复制不包括end所指元素)

3. 删除操作 ilist.erase(beg)——删除beg迭代器指向的元素,返回一迭代器,指向被删除元素后面的元素





本文转自jihite博客园博客,原文链接:http://www.cnblogs.com/kaituorensheng/p/3175788.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【C++学习笔记】:map 容器
map类属于关联式容器,可用于存储和检索集合中的数据元素...
0 0
【C++学习笔记】:set容器
在STL中,set是一种按照特定顺序存储唯一元素的容器容器。可以实现存储数据、检索数据等功能。
0 0
【C++学习笔记】:priority_queue 容器
优先级队列(priority_queue)是一种容器适配器,该容器适配器模拟的是队列存储结构,其特点是:新元素只能从一端(队尾)入队,从另一端(队头)出队;...
0 0
【C++学习笔记】:vector容器
vector容器对元素使用连续的存储位置,使用变量名加索引值来访问其元素,这看起来和数组差不多。那vector容器和数组的区别在哪?区别在于,vector容器的大小是动态变...
0 0
C++中的vector容器(保姆级讲解)
目录 一、vector基本概念 功能 vevtor与普通数组的区别: 动态拓展: 二、vector构造函数 功能描述 函数原型 三、Vector赋值操作 功能描述 函数原型 四、Vector容量和大小 功能描述: 函数原型 五、vector插入和删除 功能描述 函数原型 六、vector数据存取 功能描述 函数原型 七、vector互换容器 功能描述 函数原型 八、预留空间 功能描述 函数原型
0 0
二维容器进行图的DFS搜索和BFS搜索-C++STL模板
二维容器进行图的DFS搜索和BFS搜索-C++STL模板
0 0
<C++>快速掌握双端数组容器deque的使用
<C++>快速掌握双端数组容器deque的使用
0 0
<C++>vector容器在算法题中应用那么广泛,确定不来深入了解一下吗
<C++>vector容器在算法题中应用那么广泛,确定不来深入了解一下吗
0 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
使用CNFS搭建弹性Web服务
立即下载
阿里云文件存储 NAS 在容器场景的最佳实践
立即下载
冬季实战营第四期:零基础容器技术实战
立即下载