STL iterators
来源:互联网 发布:excel关联表格数据 编辑:程序博客网 时间:2024/06/05 10:54
要注意,上面这图表并不是表明它们之间的继承关系:而只是描述了迭代器的种类和接口。处于图表下层的迭代器都是相对于处于图表上层迭代器的扩张集。例如:forward迭代器不但拥有input和output迭代器的所有功能,还拥有更多的功能。
一个更强力一些的 iterator category(迭代器种类)是 forward iterators(前向迭代器)。这种 iterators(迭代器)能做 input(输入)和 output iterators(输出迭代器)可以做到的每一件事情,再加上它们可以读或者写它们指向的东西一次以上。这就使得它们可用于 multi-pass 运算。STL 没有提供 singly linked list(单向链表),但某些库提供了(通常被称为 slist),而这种 containers(容器)的 iterators(迭代器)就是 forward iterators(前向迭代器)。TR1 的 hashed containers(哈希容器)的 iterators(迭代器)也可以属于 forward category(前向迭代器)。
bidirectional iterators(双向迭代器)为 forward iterators(前向迭代器)加上了和向前一样的向后移动的能力。STL 的 list 的 iterators(迭代器)属于这一种类,set,multiset,map 和 multimap 的 iterators(迭代器)也一样。
最强力的 iterator category(迭代器种类)是 random access iterators(随机访问迭代器)。这种 iterators(迭代器)为 bidirectional iterators(双向迭代器)加上了 "iterator arithmetic"(“迭代器运算”)的能力,也就是说,在常量时间里向前或者向后跳转一个任意的距离。这样的运算类似于指针运算,这并不会让人感到惊讶,因为 random access iterators(随机访问迭代器)就是以 built-in pointers(内建指针)为原型的,而 built-in pointers(内建指针)可以和 random access iterators(随机访问迭代器)有同样的行为。vector,deque 和 string 的 iterators(迭代器)是 random access iterators(随机访问迭代器)。
- STL Iterators
- STL Iterators
- STL iterators
- STL Iterators
- STL iterators
- Effective STL笔记(3)-Iterators
- Extended STL, Volume 1: Collections and Iterators
- 泛型编程与STL学习-iterators
- STL迭代器之迭代器适配器:Reverse Iterators
- STL迭代器值迭代器绑定器:Insert Iterators
- STL源码剖析(3):迭代器(iterators)
- c++stl之逆向迭代器 Reverse Iterators
- STL中vector iterators imcompatible报错
- Iterators
- Iterators
- iterators
- SGI STL (7) :: why stl containers have their own iterators?
- STL vector方法总结(二)Iterators(35)
- Install VMware Tools on Ubuntu
- PHP 面向对象:访问控制
- Linux错误集以及其修复
- 【复习】NOIP2004
- ANDROID2.2新特性.APK安装参数INSTALLLOCATION
- STL iterators
- Android Shell命令相关内容讲解
- 关于eclipse中jre、tomcat配置问题
- 如何在CentOS6下实现Apache+PHP+MySQL的快速安装
- <<High Performance JavaScript>>读书笔记-6.Responsive Interfaces
- 网桥的工作原理
- sift
- android 开头篇
- 月薪3W中专生的感悟,值得看看