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/cpp/ranges/cartesian_product_view/iterator/iter_move