Входные итераторы в C++ позволяют только чтение данных из контейнера и имеют возможность перемещения только вперёд. 1 Они могут использоваться только в однопроходных алгоритмах, которые обрабатывают контейнер последовательно, так что ни к одному элементу не обращаются более одного раза. 2
Выходные итераторы обеспечивают только запись данных в контейнер и также перемещаются только вперёд. 1 Они могут использоваться только в однопроходном алгоритме, но не для доступа к элементам, а для назначения элементов. 2
Таким образом, основное отличие в том, что входные итераторы работают с данными на входе, а выходные — на выходе: входные итераторы считывают данные, а выходные — записывают 134.