STL的迭代器
来源:互联网 发布:bt用什么软件下载 编辑:程序博客网 时间:2024/05/15 23:44
vector是原生指针
list是InputIterator
deque是random access iterator
迭代器一般分为五种:Input Iterator、Output Iterator、Forward Iterator、Bidirections Iterator和Random Access Iterator。Input Iterator就象只从输入区间中读取数据一样,具有只读性,属于单向移动,如STL中的istream_iterator。Output Iterator刚好相反,只写出数据到输出区间中,具有只写性,属于单向移动,如STL中的ostream_iterator。Forward Iterator也属于单向移动,但不同之处是它同时具有数据读、写性。Bidirections Iterator如名称暗示,支持双向移动,不但可以累加(++)取得下一个元素,而且可以递减(--)取前一个元素,支持读、写性。Random Access Iterator功能最强,除了以上各迭代器的功能外,还支持随机元素访问(p+=n),下标(p[n])、相减(p1-p2)及前后次序关系(p1<p2)等。Input Iterator和Output Iterator属于同等最弱的二种迭代器,Forward Iterator是前二者功能的强化(refinement),Bidirections Iterator又是Forward Iterator迭代器的强化,最后Random Access Iterator又是Bidirections Iterator迭代器的强化。如下简单示例展示Input Iterator、Forward Iterator、Bidirections Iterator和Radom Access Iterator迭代器的功能(其中input_iterator_tag等带tag字符串为各不同迭代器的专属标识):
- STL的迭代器--Iterator
- STL的迭代器
- STL的迭代器--Iterator
- stl迭代器的种类
- 关于STL的迭代器
- STL的逆向迭代器
- STL的迭代器
- STL 迭代器的剖析
- c++STL的迭代器
- STL的逆向迭代器
- STL迭代器的分类
- STL中 迭代器的小节
- STL迭代器失效的情况
- STL中的迭代器的类型
- 【STL】C++的迭代器Interator
- sgi stl 迭代器的设计
- STL迭代器失效的问题
- STL iterator迭代器的使用
- Delphi中的Set类型的使用心得
- document.all与document.getElementsByName区别
- pku 2365 Rope 解题报告
- ubuntu 10.4安装简记 及java开发环境搭建
- 二叉堆类添加和删除元素
- STL的迭代器
- 不定义中间变量,倒序输出字符串
- Spring 几种 autowire的区别
- 处女帖
- 【转】JVM加载class文件的原理机制
- CodeRush Xpress for C#
- pku3084 最小割
- 什么是ODS
- 在Spring中发现java.lang.ClassCastException: $Proxy6问题解析