Scroll to navigation

std::output_iterator(3) C++ Standard Libary std::output_iterator(3)

NAME

std::output_iterator - std::output_iterator

Synopsis


Defined in header <iterator>
template< class I, class T >


concept output_iterator =
std::input_or_output_iterator<I> &&
std::indirectly_writable<I, T> && (since C++20)
requires(I i, T&& t) {
*i++ = std::forward<T>(t); /* not required to be
equality-preserving */


};


The output_iterator concept is a refinement of input_or_output_iterator, adding the
requirement that it can be used to write values of type and value category encoded
by T (via indirectly_writable). equality_comparable is not required.

Notes


Unlike the LegacyOutputIterator requirements, the output_iterator concept does not
require that the iterator category tag be defined.


Algorithms on output iterators should be single pass.

See also


input_or_output_iterator specifies that objects of a type can be incremented and
(C++20) dereferenced
(concept)

2024.06.10 http://cppreference.com