iter_move(ranges::cartesian_product_view::iterator)
Von cppreference.com
< cpp | ranges | cartesian product view | iterator
| friend constexpr auto iter_move( const /*iterator*/& i ) noexcept(/* siehe unten */) |
(seit C++23) | |
Sei current_ das zugrundeliegende Tupel von Iteratoren.
Entspricht: return /*tuple-transform*/(ranges::iter_move, i.current_);
Diese Funktion ist für normale unqualifizierte oder qualifizierte Suche nicht sichtbar und kann nur durch argumentabhängige Suche gefunden werden, wenn cartesian_product_view::iterator<Const> eine zugehörige Klasse der Argumente ist.
Inhalt |
[bearbeiten] Parameter
| i | - | iterator |
[bearbeiten] Rückgabewert
Ein Tupel, das das Ergebnis der Anwendung von ranges::iter_move auf die gespeicherten zugrundeliegenden Iteratoren enthält, konvertiert in den Rückgabetyp, wie oben beschrieben.
[bearbeiten] Ausnahmen
Die Ausnahmespezifikation entspricht der logischen UND-Verknüpfung der folgenden Ausdrücke
- noexcept(ranges::iter_move(std::get<N>(i.current_))) für jede ganze Zahl 0 ≤ N ≤ sizeof...(Vs),
- std::is_nothrow_move_constructible_v<ranges::range_rvalue_reference_t</*maybe-const*/<Const, T>>> für jeden Typ
TinFirst, Vs....
[bearbeiten] Siehe auch
| (C++20) |
wandelt das Ergebnis der Dereferenzierung eines Objekts in seinen zugehörigen rvalue-Referenztyp um (Anpassungspunkt-Objekt) |