basic_streambuf::underflow
Geschützte, virtuelle Funktion, um das aktuelle Element des Eingabestreams zu extrahieren.
virtual int_type underflow( );
Rückgabewert
Das aktuelle Element.
Hinweise
Die geschützte virtuelle Memberfunktion ermittelt, das aktuelle Element ch im Eingabestream, ohne die aktuelle Streamposition zurückzusetzen zu extrahieren, und gibt diese als traits_type::to_int_type zurückgegeben (ch). Sie kann auf verschiedene Möglichkeiten:
Wenn eine Leseposition verfügbar ist, ch ist das Element, das in der Leseposition gespeichert wird. Weitere Informationen über dieses, finden Sie im Abschnitt Hinweise unter basic_streambuf-Klasse.
Er kann eine Leseposition bereitstellen, indem er dem neuen oder zusätzlichen Speicher des Eingabepuffer zuordnet und dann in, von einer externen Quelle, ein oder mehrere Elemente. Weitere Informationen über dieses, finden Sie im Abschnitt Hinweise unter basic_streambuf-Klasse.
Wenn die Funktion nicht ausführen kann, wird traits_type::EOF() zurück oder löst eine Ausnahme aus. Andernfalls wird das aktuelle Element im Eingabestream zurück, konvertiert, wie zuvor beschrieben. Als Standardverhalten wird traits_type::eof() zurückgegeben.
Die virtuelle Funktion underflow, mit der Synchronisierung und Überlauf-Funktionen, definiert die Eigenschaften streambuf abgeleiteten Klasse. Jede abgeleitete Klasse implementierte underflow unterschiedlich, die Schnittstelle mit der aufrufenden Streamklasse gleich.
Die underflow-Funktion wird am häufigsten über öffentliche streambuf-Funktionen wie sgetc und sgetn aufgerufen, wenn der Abrufensbereich leer ist, doch weitere Klassen, einschließlich der Streamklassen, können underflow jederzeit aufrufen.
Die Funktion stellt underflow den Abrufensbereich mit Zeichen mit der Eingabequelle. Wenn der Abrufensbereich Zeichen enthält, gibt underflow den ersten Zeichen zurück. Wenn der Abrufensbereich leer ist, wird der Abrufensbereich aus und gibt das nächste Zeichen zurück (dem er im Abrufensbereich können). Wenn keine weiteren Zeichen verfügbar ist, gibt underflowEOF zurück und verlässt den Abrufensbereich leer.
In der strstreambuf-Klasse angepasst underflow den egptr Zeiger auf Zugriffsspeicher, der dynamisch durch Aufruf overflow zugeordnet wurde.
Anforderungen
Header: <streambuf>
Namespace: std