【发布时间】:2014-01-22 05:19:40
【问题描述】:
为什么 C++ STL 有五个迭代器?只有随机迭代器足以对所有容器进行操作。有什么具体原因吗?
对不起..这是我的错误..我不是说随机迭代器...我应该问双向迭代器...所以你不认为只有双向迭代器可以覆盖输入的功能吗?输出,前向迭代器?那么引入(输入、输出、转发)迭代器概念有什么具体原因吗?谢谢。 ——
【问题讨论】:
-
如何在
std::list上操作随机访问迭代器,更不用说std::forward_list? -
对此有 10.000 个答案。并非每个集合都可以在两个方向(地图、图表、单链表)和恒定时间内访问(注意每个单词)。
-
Only random iterator could be sufficient to operate on all the containers.不,错了。有趣的是,C++ 标准体比你更了解,事实证明 ;)