Namespaces
Variants

iter_swap (ranges::cartesian_product_view:: iterator )

From cppreference.net
Ranges library
Range adaptors
friend constexpr void iter_swap ( const /*iterator*/ & x, const /*iterator*/ & y )

noexcept ( /* siehe Beschreibung */ )
requires ( std:: indirectly_swappable <
ranges:: iterator_t < /*maybe-const*/ < Const, First >>> und ... und

std:: indirectly_swappable < ranges:: iterator_t < /*maybe-const*/ < Const, Vs >>> ) ;
(seit C++23)

Wendet ranges:: iter_swap auf die gespeicherten zugrundeliegenden Iteratoren an. Formal wird für jede ganze Zahl 0 ≤ i ≤ sizeof... ( Vs ) folgendes ausgeführt: ranges:: iter_swap ( std :: get < i > ( x. current_ ) , std :: get < i > ( y. current_ ) ) , wobei current_ das zugrundeliegende Tupel von Iteratoren ist.

Diese Funktion ist für gewöhnliches unqualified oder qualified lookup nicht sichtbar und kann nur durch argument-dependent lookup gefunden werden, wenn cartesian_product_view:: iterator <Const> eine assoziierte Klasse der Argumente ist.

Inhaltsverzeichnis

Parameter

x, y - Iteratoren zu den auszutauschenden Elementen

Rückgabewert

(keine)

Exceptions

Die Ausnahmespezifikation entspricht dem logischen UND des Ausdrucks noexcept ( ranges:: iter_swap ( std :: get < i > ( x. current_ ) , std :: get < i > ( y. current_ ) ) ) für jede ganze Zahl 0 ≤ i ≤ sizeof... ( Vs ) .

Siehe auch

(C++20)
tauscht die Werte aus, auf die zwei dereferenzierbare Objekte verweisen
(Anpassungspunktobjekt)
tauscht die Elemente aus, auf die zwei Iteratoren zeigen
(Funktionstemplate)