iter_move(ranges::cartesian_product_view::iterator)
friend constexpr auto iter_move( const /*iterator*/& i ) noexcept(/* see below */) | (с C++23) |
Пусть current_ является базовой кортежем итераторов.
Эквивалентно: return /*tuple-transform*/(ranges::iter_move, i.current_);
Эта функция не видна для обычного неквалифицированного или квалифицированного поиска и может быть найдена только с помощью поиска, зависящего от аргументов, когда cartesian_product_view::iterator<Const> является связанным классом аргументов.
Параметры
| i | - | итератор |
Возвращаемое значение
Кортеж, содержащий результат применения ranges::iter_move к сохранённым базовым итераторам, преобразованным к типу возвращаемого значения, как описано выше.
Исключение
Спецификация исключений эквивалентна логическому И следующих выражений:
-
noexcept(ranges::iter_move(std::get<N>(i.current_)))для каждого целого числа0 ≤ N ≤ sizeof...(Vs), -
std::is_nothrow_move_constructible_v<ranges::range_rvalue_reference_t</*maybe-const*/<Const, T>>>для каждого типаTвFirst, Vs....
См. также
|
(C++20) | преобразует результат обращение к объекту в связанный тип ссылки rvalue (объект точки кастомизации) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/cartesian_product_view/iterator/iter_move