第十四周阅读程序(3)
2016-05-27 17:30
656 查看
问题及代码:
#include <iterator>
#include <list>
#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
int ia[5] = {1,2,3,4};
list<int> id(ia, ia+4);
ostream_iterator<int> outite(cout, " ");
copy(id.begin(), id.end(), outite);
cout << endl;
copy(ia+1, ia+2, front_inserter(id));
copy(id.begin(), id.end(), outite);
cout << endl;
copy(ia+3, ia+4, back_inserter(id));
copy(id.begin(), id.end(), outite);
cout << endl;
list<int>::iterator ite = find(id.begin(), id.end(), 3);
copy(ia+0, ia+2, inserter(id, ite));
copy(id.begin(), id.end(), outite);
cout << endl;
copy(id.rbegin(), id.rend(), outite);
cout << endl;
return 0;
}
运行结果:
知识点:
id.rbegin(), id.rend()
容器定义的反向迭代器rbegin,rend
分别返回指向容器尾元素和首元素前一位置的反向迭代器
#include <iterator>
#include <list>
#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
int ia[5] = {1,2,3,4};
list<int> id(ia, ia+4);
ostream_iterator<int> outite(cout, " ");
copy(id.begin(), id.end(), outite);
cout << endl;
copy(ia+1, ia+2, front_inserter(id));
copy(id.begin(), id.end(), outite);
cout << endl;
copy(ia+3, ia+4, back_inserter(id));
copy(id.begin(), id.end(), outite);
cout << endl;
list<int>::iterator ite = find(id.begin(), id.end(), 3);
copy(ia+0, ia+2, inserter(id, ite));
copy(id.begin(), id.end(), outite);
cout << endl;
copy(id.rbegin(), id.rend(), outite);
cout << endl;
return 0;
}
运行结果:
知识点:
id.rbegin(), id.rend()
容器定义的反向迭代器rbegin,rend
分别返回指向容器尾元素和首元素前一位置的反向迭代器
相关文章推荐
- JavaScript笔记(3)关于重复的定义和遗漏的定义
- list 用法
- Apk动态写入信息
- Debugging kernel and modules via gdb
- selenium + python自动化测试环境搭建
- mysql主从配置
- asp.net 服务器端缓存与客户端缓存 [转]
- npm 安装不了模块
- 外观模式及php实现
- 禁止 Httpclient4.3 自动跳转
- Android控件ImageSwitcher实现左右图片切换功能
- window7下部署Dubbo,zookeeper
- 虚拟机开机,无法打开内核设备“\\.\Global\vmx86”: 系统找不到指定的文件
- 轮播图
- poj3186(递推)
- poj 2186 Popular Cows 强连通量分解模板
- 【开源】1句代码搞定图片批量上传,无需什么代码功底【无语言界限】
- Mvc创建并注册防盗链
- 并行开发系列 Plinq等
- Scala设计模式Part I. 创建模式——4.原型模式