Namespaces
Variants

std::ranges::cartesian_product_view<First, Vs...>:: iterator

From cppreference.net
Ranges library
Range adaptors
template < bool Const >
class /*iterator*/
(seit C++23)
( nur zur Darstellung* )

Der Rückgabetyp von cartesian_product_view::begin , und von cartesian_product_view::end wenn die zugrundeliegende View V ein common_range ist.

Der Typ /*iterator*/ < true > wird von den const-qualifizierten Überladungen zurückgegeben. Der Typ /*iterator*/ < false > wird von den nicht const-qualifizierten Überladungen zurückgegeben.

Inhaltsverzeichnis

Mitgliedertypen

Mitglied Definition
Parent (private) maybe-const  < Const, ranges:: cartesian_product_view >>
( Nur zur Veranschaulichung verwendeter Member-Typ* )
iterator_category std:: input_iterator_tag
iterator_concept
value_type std:: tuple < ranges:: range_value_t < /*maybe-const*/ < Const, First >> ,
ranges:: range_value_t < /*maybe-const*/ < Const, Vs >> ... > ;
reference std:: tuple < ranges:: range_reference_t < /*maybe-const*/ < Const, First >> ,
ranges:: range_reference_t < /*maybe-const*/ < Const, Vs >> ... > ;
difference_type Ein implementierungsdefinierter vorzeichenbehafteter Ganzzahl-ähnlicher Typ (möglicherweise der kleinste solcher Typen), der breit genug ist, um das Produkt der maximalen Größen aller zugrundeliegenden Bereiche zu speichern, falls ein solcher Typ existiert.

Datenmitglieder

Member Definition
Parent* parent_ (private) Ein Zeiger auf das übergeordnete Objekt cartesian_product_view
( Nur zur Veranschaulichung verwendetes Member-Objekt* )
current_ (private) Ein Tupel von Iteratoren zu den aktuellen zugrundeliegenden Elementen vom Typ std:: tuple < ranges:: iterator_t < /*maybe-const*/ < Const, First >> ,
ranges:: iterator_t < /*maybe-const*/ < Const, Vs >> ... >
( Nur zur Veranschaulichung verwendetes Member-Objekt* )

Memberfunktionen

Konstruiert einen Iterator
(öffentliche Elementfunktion)
greift auf das Element zu
(öffentliche Elementfunktion)
greift auf ein Element per Index zu
(öffentliche Elementfunktion)
bewegt den zugrundeliegenden Iterator vorwärts oder rückwärts
(öffentliche Elementfunktion)
bewegt den Iterator vorwärts
( Nur zur Darstellung verwendete Elementfunktion* )
bewegt den Iterator rückwärts
( Nur zur Darstellung verwendete Elementfunktion* )
gibt die Distanz zwischen zwei Iteratoren zurück
( Nur zur Darstellung verwendete Elementfunktion* )

Nicht-Member-Funktionen

vergleicht die zugrundeliegenden Iteratoren
(Funktion)
führt Iterator-Arithmetik durch
(Funktion)
(C++23)
konvertiert das Ergebnis der Dereferenzierung des zugrundeliegenden Iterators in seinen zugehörigen Rvalue-Referenztyp
(Funktion)
(C++23)
tauscht die zugrundeliegenden referenzierten Elemente
(Funktion)

Beispiel

Referenzen

  • C++23-Standard (ISO/IEC 14882:2024):
  • 26.7.32.3 Klassentemplate cartesian_product_view::iterator [range.cartesian.iterator]

Siehe auch