Namespaces
Variants

std::ranges::basic_istream_view:: iterator

From cppreference.net
Ranges library
Range adaptors
struct /*iterator*/ ;
( nur zur Darstellung* )

ranges:: basic_istream_view < Val, CharT, Traits > :: iterator ist der Typ der Iteratoren, die von begin() von ranges:: basic_istream_view < Val, CharT, Traits > zurückgegeben werden.

iterator ist ein input_iterator , erfüllt jedoch nicht die Anforderungen eines LegacyInputIterator und funktioniert daher nicht mit pre-C++20 Algorithmen .

Inhaltsverzeichnis

Verschachtelte Typen

Typ Definition
iterator_concept std::input_iterator_tag
difference_type std::ptrdiff_t
value_type Val

Datenmitglieder

Mitglied Definition
ranges:: basic_istream_view < Val, CharT, Traits > parent_ ein Zeiger auf die übergeordnete Ansicht
( Nur zur Darstellung verwendetes Mitgliedsobjekt* )

Memberfunktionen

std::ranges::basic_istream_view:: iterator :: iterator

/*iterator*/ ( const /*iterator*/ & ) = delete ;
(1) (since C++20)
/*iterator*/ ( /*iterator*/ && ) = default ;
(2) (since C++20)
constexpr explicit /*iterator*/ ( basic_istream_view & parent ) ;
(3) (since C++20)
1) Der Kopierkonstruktor ist gelöscht. Der Iterator ist nicht kopierbar.
2) Der Verschiebekonstruktor ist standardmäßig implementiert.
3) Initialisiert parent_ mit std:: addressof ( parent ) .

std::ranges::basic_istream_view:: iterator :: operator=

/*iterator*/ & operator = ( const /*iterator*/ & ) = delete ;
(1) (seit C++20)
/*iterator*/ & operator = ( /*iterator*/ && ) = default ;
(2) (seit C++20)
1) Der Kopierzuweisungsoperator ist gelöscht. Der Iterator ist nicht kopierbar.
2) Der Verschiebezuweisungsoperator ist standardmäßig implementiert.

std::ranges::basic_istream_view:: iterator :: operator++

/*iterator*/ & operator ++ ( ) ;
(1) (seit C++20)
void operator ++ ( int ) ;
(2) (seit C++20)
1) Entspricht * parent_  - > stream_ >> parent_  - > value_ .
2) Entspricht ++* this .

std::ranges::basic_istream_view:: iterator :: operator*

Val & operator * ( ) const ;
(seit C++20)

Gibt parent_  - > value_ zurück.

Nicht-Member-Funktionen

operator== (std::ranges::basic_istream_view:: iterator , std::default_sentinel)

friend bool operator == ( const /*iterator*/ & x, std:: default_sentinel_t ) ;
(seit C++20)

Gibt zurück ! * parent_  - > stream_ .

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

Fehlerberichte

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

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
P2325R3 C++20 Standardkonstruktor wurde als C++20 bereitgestellt
Iteratoren müssen default_initializable sein
zusammen mit der Anforderung
entfernt