I'm reading C++ Standard (Section Input Iterator) and I'm having hard time to visualize the text in bold:
Note: For input iterators, a == b does not imply ++a == ++b. (Equality does not guarantee the substitution property or referential transparency.) Algorithms on input iterators should never attempt to pass through the same iterator twice. They should be single pass algorithms.
I understand that input iterators are single pass, but I can't seem to visualize it in a C++ code. Can someone please show me in example on how to make iterator to become a single pass?