Freigeben über


istreambuf_iterator-Klasse

Die Vorlagenklasse istreambuf_iterator beschreibt ein Eingabeiteratorobjekt, das Zeichenelemente aus einem Eingabestreampuffer extrahiert, auf den es durch ein gespeichertes Objekt des Typs Zeiger auf basic_streambuf<CharType, Traits> zugreift.

template <  
   class CharType 
   class Traits = char_traits<CharType> 
> 
class istreambuf_iterator 
: public iterator<input_iterator_tag, CharType, typename Traits::off_type, CharType *, CharType&>

Parameter

  • CharType
    Der Typ, der den Zeichentyp für das istreambuf_iterator-Objekt darstellt.

  • Traits
    Der Typ, der den Zeichentyp für das istreambuf_iterator-Objekt darstellt. Dieses Argument ist optional, und der Standardwert ist char_traits<CharType>.

Hinweise

Die istreambuf_iterator-Klasse muss den Anforderungen für einen Eingabeiterator erfüllen.

Nachdem ein Objekt der istreambuf_iterator-Klasse mit einem als nicht NULL gespeicherten Zeiger erstellt oder erhöht hat, versucht das Objekt effektiv, ein Objekt vom Typ CharType aus dem zugeordneten Eingabestream zu extrahieren und zu speichern. Die Extraktion kann jedoch verzögert werden, bis das Objekt tatsächlich dereferenziert oder kopiert wurde. Wenn die Extraktion fehlschlägt, ersetzt das Objekt den gespeicherten Zeiger durch einen NULL-Zeiger und erstellt so einen Indikator für das Ende der Sequenz.

Konstruktoren

istreambuf_iterator

Erstellt ein istreambuf_iterator-Objekt, das initialisiert wird, um Zeichen aus dem Eingabestream zu lesen.

Typedefs

char_type

Ein Typ, der für den Zeichentyp von ostreambuf_iterator bereitgestellt wird.

int_type

Ein Typ, der einen Ganzzahltyp für ein istreambuf_iterator-Objekt bereitstellt.

istream_type

Ein Typ, der für den Streamtyp von istream_iterator bereitgestellt wird.

streambuf_type

Ein Typ, der für den Streamtyp von istreambuf_iterator bereitgestellt wird.

traits_type

Ein Typ, der für den Merkmaltyp von istream_iterator bereitgestellt wird.

Memberfunktionen

equal

Testet zwei Eingabestreampufferiteratoren auf Gleichheit.

Operators

operator*

Der Dereferenzierungsoperator gibt das folgende Zeichen im Stream zurück.

operator++

Gibt entweder das folgende Zeichen im Eingabestream zurück oder kopiert das Objekt vor dem Inkrementieren und gibt die Kopie zurück.

Operator->

Gibt den Wert eines Members zurück, falls vorhanden.

Anforderungen

Header: <Iterator>

Namespace: std

Siehe auch

Referenz

iterator-Struktur

<iterator>

Threadsicherheit in der C++-Standardbibliothek

Standardvorlagenbibliothek