插入迭代器
来源:互联网 发布:织梦html5整站源码 编辑:程序博客网 时间:2024/05/17 22:53
C++提供了三种插入迭代器:
(1)back_inserter,创建使用push_back实现的迭代器
(2)front_inserter,使用push_front实现(当前容器必须提供push_front操作!!!)
(3)inserter,使用insert实现插入操作。除了所关联的容器外,还带有第二个实参,指向插入起始位置的实参。
实例:
#include<list>#include<algorithm>#include<iterator>#include<iostream>using namespace std;int main(){list<int> ilist, ilist2, ilist3;//ilist contains:3 2 1 0for (list<int>::size_type i = 0; i != 4; ++i)ilist.push_front(i);//ilist2 contains:0 1 2 3copy(ilist.begin(),ilist.end(),front_inserter(ilist2));//ilist3 contains:3 2 1 0copy(ilist.begin(),ilist.end(),inserter(ilist3,ilist3.begin()));cout << "ilist " << "ilist2 " << "ilist3" << endl;for (list<int>::iterator it1 = ilist.begin(), it2 = ilist2.begin(), it3 = ilist3.begin(); it1 != ilist.end() && it2 != ilist2.end() && it3 != ilist3.end(); ++it1, ++it2, ++it3){cout <<" "<< *it1 <<" "<< *it2 <<" "<< *it3 << endl;}copy(ilist2.begin(),ilist2.end(),inserter(ilist3,ilist3.begin()));cout << "ilist3:";for (list<int>::iterator it = ilist3.begin(); it != ilist3.end(); ++it)cout << *it << " ";cout << endl;return 0;}
测试结果:
0 0
- 插入迭代器
- 插入迭代器
- 插入迭代器
- 插入迭代器
- 插入迭代器
- 体会插入迭代器
- STL 之插入迭代器
- C++插入迭代器
- c++ 插入迭代器
- 插入、
- 插入
- 插入
- C++迭代器之'插入迭代器'
- C++迭代器之'插入迭代器'
- C++ STL迭代器 -- 插入迭代器
- 流容器与插入迭代器
- 插入迭代器 back_inserter、front_inserter、inserter
- Copy和插入迭代器使用心得
- Epoll在LT和ET模式下的读写方式
- CentOS (Apache) 显示中文
- 第12周-项目3-摩托车继承自行车和机动车 .
- 搞清除,uimage zimage 以及转换方法
- 星型模型与雪花模型
- 插入迭代器
- VS2008向MFC 对话框 添加托盘图标(显示和消失)
- 第12周-项目4-时间日期类 .
- 条款20:宁以pass-by-reference-to-const替换pass-by-value
- poj1789
- 面试题:大小交换
- POJ 1111 Image Perimeters(DFS)
- 快排 + 二分
- 经验总结06--java计时器