Какая ваша цитата, по-видимому, означает сказать, что любой итератор, который не удовлетворяет требованиям входного итератора, является итератором вывода.
Стандартная иерархия итераторов категории определяют (см 24.2.1) в следующей последовательности итераторных категорий с вложенных требованиями
Random Access -> Двунаправленный -> Вперед -> Input
, в то время как категория итератора вывода стоит отдельно.
Это вложение означает, что каждый итератор ввода также является входным итератором (т. Е. Также удовлетворяет требованиям категории ввода-итератора), каждый двунаправленный итератор также является одновременно и перекрестным и вводным итератором. Это контекст, в котором вы, скорее всего, должны интерпретироваться.
std::vector::const_iterator
- это итератор произвольного доступа, который позволяет ему удовлетворять требованиям двунаправленного, форвардного и ввода-итератора. То есть в этом смысле std::vector::const_iterator
is a Итератор ввода (!). По этой причине ваша цитата не может быть использована для вывода, что она является итератором вывода.
Дальнейшее подразделение в изменяемых итераторы и nonmutable (постоянные) итераторы наносится поверх этого, но это не является необходимым, чтобы привести его в картину в этом случае.
Это не так. Итератор вывода - это итератор с записью. –