【发布时间】:2019-01-31 19:04:51
【问题描述】:
我正在阅读 Bjarne Stroustrup 的 The C++ Programming Language 第 4 版。在迭代器章节(第 31.1.2 章)中,它说:
输入迭代器:我们可以使用 ++ 向前迭代并使用 * 读取每个元素(重复)。
输出迭代器:我们可以使用 ++ 向前迭代并使用 * 编写一个元素仅一次。
我对输入迭代器是否只能读取一次或重复进行了多次搜索,例如: http://www.cplusplus.com/reference/iterator/InputIterator/ https://www.geeksforgeeks.org/input-iterators-in-cpp/
并且大多数建议输入迭代器只能读取一次。但是为什么作者反复说输入迭代器呢?它是否正确?如果是这样,为什么输入迭代器可以重复读取,而输出迭代器只能写入一次。我一直认为输入和输出迭代器是完全相反的。
谢谢大家!
【问题讨论】:
标签: c++ c++11 iterator input-iterator