std::move_iterator<Iter>::operator=
template< class U > move_iterator& operator=( const move_iterator<U>& other ); | (до C++17) | |
template< class U > constexpr move_iterator& operator=( const move_iterator<U>& other ); | (с C++17) |
Базовый итератор получает значение базового итератора other, т.е. other.base().
Поведение не определено, если U не преобразуется в Iter. | (до C++20) |
| Этот перегрузчик участвует в разрешении перегрузки только если | (с C++20) |
Параметры
| other | - | итератор-адаптер для присваивания |
Возвращаемое значение
*this
Пример
Отчеты об ошибках
Следующие отчеты об ошибках, изменяющие поведение, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Применён к | Поведение, как опубликовано | Корректное поведение |
|---|---|---|---|
| LWG 3435 | C++20 | оператор присваивания с преобразованием не был ограничен | ограничен |
См. также
|
(C++11) | создаёт новый адаптер итератора (публичный член-функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/iterator/move_iterator/operator%3D