std::Output Iterator

<iterator>
Output iterator category
Output

Output iterators are iterators especially designed for sequential output operations, where each element pointed by the iterator is written a value only once and then the iterator is incremented.

There is not a single type of output iterator: Each container defines its own specific iterator type able to iterate through it and access its elements. But all output iterators support -at least- the following operations:

characteristicvalid expressions
Can be copied and copy-constructedX b(a);
b = a;
Can be dereferenced (when not null)
and only to be the left side of an assignment operation.
Each value is dereferenced only once
(algorithms using OutputIterator are single pass algorithms)
*a = t
Can be incremented (when not null)++a
a++
*a++ = t
Where X is an iterator type, a and b are objects of this iterator type, and t is an object of the type pointed by the iterator type.

See also