iter_move(ranges::enumerate_view::iterator)
friend constexpr auto iter_move( const /*iterator*/& i ) noexcept(/* see below */) | (начиная с C++23) |
Пусть current_ — базовый итератор, pos_ — базовый индекс, а Base — тип (возможно, с cv-квалификаторами) базовой последовательности.
Эквивалентно:
using result_type =
std::tuple<difference_type, ranges::range_rvalue_reference_t<Base>>;
return result_type(i.pos_, ranges::iter_move(i.current_));
Эта функция не видна при обычном поиске неквалифицированного имени или поиске квалифицированного имени и может быть найдена только с помощью поиска, зависящего от аргументов, если enumerate_view::iterator<Const> является ассоциированным классом аргументов.
Параметры
| i | - | итератор |
Возвращаемое значение
Кортеж, содержащий индекс и результат применения ranges::iter_move к сохранённому итератору.
Исключения
noexcept спецификация: noexcept(
noexcept(ranges::iter_move(i.current_)) and
std::is_nothrow_move_constructible_v<
ranges::range_rvalue_reference_t<Base>>
)
См. также
|
(C++20) | приводит результат разыменования объекта к соответствующему типу ссылки на rvalue (объект точки настройки) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/ranges/enumerate_view/iterator/iter_move