27 Iterators library [iterators]

27.5 Iterator adaptors [predef.iterators]

27.5.3 Move iterators [move.iterators]

27.5.3.3 move_­iterator operations [move.iter.ops]

27.5.3.3.1 move_­iterator constructors [move.iter.op.const]

constexpr move_iterator();

Effects: Создает объект move_­iterator, инициализирующий значение current. Операции итератора, применяемые к результирующему итератору, имеют определенное поведение тогда и только тогда, когда соответствующие операции определены в итераторе типа, инициализированном значением Iterator.

constexpr explicit move_iterator(Iterator i);

Effects: Создаёт move_­iterator, инициализируется current с i.

template <class U> constexpr move_iterator(const move_iterator<U>& u);

Effects: Создаёт move_­iterator, инициализируется current с u.base().

Requires: U конвертируется в Iterator.