Namespaces
Variants

std::ranges::elements_view<V,N>::iterator

Von de.cppreference.net
 
 
Ranges library
Bereichsadaptoren
 
 
template< bool Const >
class /*iterator*/;
(nur zur Veranschaulichung*)

Der Rückgabetyp von elements_view::begin, und von elements_view::end wenn die zugrundeliegende Ansicht eine 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.

Mitgliedstypen

Mitglied Definition
Base (privat) maybe-const <Const, V>
(nur zur Darstellung dienender Mitgliedstyp*)
iterator_concept Bezeichnet:
  • std::random_access_iterator_tag, falls Base modelliert random_access_range. Andernfalls,
  • std::bidirectional_iterator_tag, falls Base modelliert bidirectional_range. Andernfalls,
  • std::forward_iterator_tag, falls Base modelliert forward_range. Andernfalls,
  • std::input_iterator_tag.
iterator_category
(bedingt vorhanden)
Nicht definiert, falls Base modelliert nicht forward_range. Andernfalls,
  • std::input_iterator_tag, falls std::get<N>(*current_) ein Rvalue ist. Andernfalls, sei C der Typ std::iterator_traits<std::iterator_t<Base>>::iterator_category.
  • std::random_access_iterator_tag, falls C modelliert std::derived_from<std::random_access_iterator_tag>. Andernfalls,
  • C.
value_type std::remove_cvref_t<std::tuple_element_t<N, ranges::range_value_t<Base>>>
difference_type ranges::range_difference_t<Base>

Datenmember

Mitglied Beschreibung
ranges::iterator_t<Base> current_ (privat) ein Iterator zum aktuellen Element der zugrunde liegenden Sequenz
(nur zur Veranschaulichung Member-Objekt*)

Memberfunktionen

Konstruiert einen Iterator
(öffentliche Elementfunktion)
gibt den zugrundeliegenden Iterator zurück
(öffentliche Elementfunktion)
greift auf das N te Tupel-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)

Nicht-Member-Funktionen

vergleicht die zugrundeliegenden Iteratoren
(Funktion)
führt Iterator-Arithmetik durch
(Funktion)

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
P2259R1 C++20 member iterator_category ist immer definiert nur definiert wenn Base das Konzept forward_range modelliert
LWG 3555 C++20 die Definition von iterator_concept ignoriert const wurde angepasst um zu berücksichtigen

Siehe auch

(C++20)
der Rückgabetyp von ranges::transform_view::begin und von ranges::transform_view::end , wenn die zugrundeliegende View ein common_range ist
(private Member-Klassen-Template)