Namespaces
Variants

std::ranges::basic_istream_view::iterator

Von de.cppreference.net
 
 
Ranges-Bibliothek
Bereichsadapter
 
 
struct /*iterator*/;
(nur zur Veranschaulichung*)

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, aber erfüllt nicht LegacyInputIterator, und funktioniert daher nicht mit pre-C++20 algorithms.

Verschachtelte Typen

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

Datenelemente

Member Beschreibung
ranges::basic_istream_view<Val, CharT, Traits> parent_ ein Zeiger auf die übergeordnete Ansicht
(nur zur Darstellung dienendes Member-Objekt*)

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