Namespaces
Variants

std:: basic_iostream

From cppreference.net
< cpp ‎ | io
Definiert im Header <istream>
template <

class CharT,
class Traits = std:: char_traits < CharT >
> class basic_iostream :
public basic_istream < CharT, Traits > ,

public basic_ostream < CharT, Traits >

Die Klassenvorlage basic_iostream bietet Unterstützung für hochwertige Eingabe-/Ausgabeoperationen auf Streams. Die unterstützten Operationen umfassen sequenzielles Lesen oder Schreiben und Formatierung. Diese Funktionalität wird über die Schnittstelle implementiert, die von der std::basic_streambuf -Klasse bereitgestellt wird. Sie wird über die std::basic_ios -Klasse zugänglich gemacht.

cpp/io/ios base cpp/io/basic ios cpp/io/basic istream cpp/io/basic ostream std-basic iostream-inheritance.svg

Vererbungsdiagramm

Es werden mehrere Typdefinitionen für gängige Zeichentypen bereitgestellt:

Definiert im Header <istream>
Typ Definition
std::iostream std :: basic_iostream < char >
std::wiostream std :: basic_iostream < wchar_t >

Inhaltsverzeichnis

Mitgliedertypen

Mitgliedertyp Definition
char_type CharT
traits_type Traits ; das Programm ist fehlerhaft, wenn Traits::char_type nicht CharT ist.
int_type Traits::int_type
pos_type Traits::pos_type
off_type Traits::off_type

Memberfunktionen

Konstruiert das Objekt
(öffentliche Elementfunktion)
[virtual]
Destruiert das Objekt
(virtuelle öffentliche Elementfunktion)

Geschützte Memberfunktionen

(C++11)
weist einen anderen basic_iostream per Move-Operation zu
(geschützte Elementfunktion)
(C++11)
tauscht den Zustand mit einem anderen basic_iostream
(öffentliche Elementfunktion)

Geerbt von std:: basic_istream

Elementfunktionen

Formatierte Eingabe
extrahiert formatierte Daten
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
Unformatierte Eingabe
extrahiert Zeichen
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
liest das nächste Zeichen ohne es zu extrahieren
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
gibt ein Zeichen zurück
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
gibt ein Zeichen in den Eingabestrom zurück
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
extrahiert Zeichen bis zum gefundenen Trennzeichen
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
extrahiert und verwirft Zeichen bis zum gefundenen Trennzeichen
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
extrahiert Zeichenblöcke
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
extrahiert bereits verfügbare Zeichenblöcke
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
gibt die Anzahl der zuletzt extrahierten Zeichen zurück
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
Positionierung
gibt die Eingabepositionsanzeige zurück
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
setzt die Eingabepositionsanzeige
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )
Sonstiges
synchronisiert mit dem zugrundeliegenden Speichergerät
(öffentliche Elementfunktion von std::basic_istream<CharT,Traits> )

Elementklassen

implementiert grundlegende Logik zur Vorbereitung des Streams für Eingabeoperationen
(öffentliche Elementklasse von std::basic_istream<CharT,Traits> )

Geerbt von std:: basic_ostream

Elementfunktionen

Formatierte Ausgabe
fügt formatierte Daten ein
(öffentliche Elementfunktion von std::basic_ostream<CharT,Traits> )
Unformatierte Ausgabe
fügt ein Zeichen ein
(öffentliche Elementfunktion von std::basic_ostream<CharT,Traits> )
fügt Zeichenblöcke ein
(öffentliche Elementfunktion von std::basic_ostream<CharT,Traits> )
Positionierung
gibt die Ausgabepositionsanzeige zurück
(öffentliche Elementfunktion von std::basic_ostream<CharT,Traits> )
setzt die Ausgabepositionsanzeige
(öffentliche Elementfunktion von std::basic_ostream<CharT,Traits> )
Verschiedenes
synchronisiert mit dem zugrundeliegenden Speichergerät
(öffentliche Elementfunktion von std::basic_ostream<CharT,Traits> )

Elementklassen

implementiert grundlegende Logik zur Vorbereitung des Streams für Ausgabeoperationen
(öffentliche Elementklasse von std::basic_ostream<CharT,Traits> )

Geerbt von std:: basic_ios

Member-Typen

Member-Typ Definition
char_type CharT
traits_type Traits
int_type Traits::int_type
pos_type Traits::pos_type
off_type Traits::off_type

Member-Funktionen

Status-Funktionen
prüft, ob kein Fehler aufgetreten ist, d.h. I/O-Operationen verfügbar sind
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
prüft, ob das Dateiende erreicht wurde
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
prüft, ob ein Fehler aufgetreten ist
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
prüft, ob ein nicht behebbarer Fehler aufgetreten ist
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
prüft, ob ein Fehler aufgetreten ist (Synonym für fail() )
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
prüft, ob kein Fehler aufgetreten ist (Synonym für ! fail() )
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
gibt Statusflags zurück
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
setzt Statusflags
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
modifiziert Statusflags
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
Formatierung
kopiert Formatierungsinformationen
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
verwaltet das Füllzeichen
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
Verschiedenes
verwaltet die Ausnahmemaske
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
setzt das Locale
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
verwaltet den assoziierten Streampuffer
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
verwaltet den verknüpften Stream
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
verengt Zeichen
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )
erweitert Zeichen
(öffentliche Member-Funktion von std::basic_ios<CharT,Traits> )

Geerbt von std:: ios_base

Memberfunktionen

Formatierung
verwaltet Formatierungsflags
(öffentliche Elementfunktion von std::ios_base )
setzt spezifische Formatierungsflags
(öffentliche Elementfunktion von std::ios_base )
löscht spezifische Formatierungsflags
(öffentliche Elementfunktion von std::ios_base )
verwaltet Dezimalgenauigkeit von Gleitkommaoperationen
(öffentliche Elementfunktion von std::ios_base )
verwaltet Feldbreite
(öffentliche Elementfunktion von std::ios_base )
Locales
setzt Locale
(öffentliche Elementfunktion von std::ios_base )
gibt aktuelle Locale zurück
(öffentliche Elementfunktion von std::ios_base )
Internes erweiterbares Array
[static]
gibt eine programmweit eindeutige Ganzzahl zurück, die sicher als Index für pword() und iword() verwendet werden kann
(öffentliche statische Elementfunktion von std::ios_base )
vergrößert bei Bedarf den privaten Speicher und ermöglicht Zugriff auf das long -Element am gegebenen Index
(öffentliche Elementfunktion von std::ios_base )
vergrößert bei Bedarf den privaten Speicher und ermöglicht Zugriff auf das void * -Element am gegebenen Index
(öffentliche Elementfunktion von std::ios_base )
Sonstiges
registriert Ereignis-Callback-Funktion
(öffentliche Elementfunktion von std::ios_base )
legt fest, ob C++- und C-I/O-Bibliotheken interoperabel sind
(öffentliche statische Elementfunktion von std::ios_base )
Elementklassen
Stream-Exception
(öffentliche Elementklasse von std::ios_base )
initialisiert Standard-Stream-Objekte
(öffentliche Elementklasse von std::ios_base )

Mitgliedstypen und Konstanten

Typ Erklärung
Stream-Öffnungsmodus-Typ

Folgende Konstanten sind ebenfalls definiert:

Konstante Erklärung
app Vor jedem Schreibvorgang zum Ende des Streams positionieren
binary Im Binärmodus öffnen
in Zum Lesen öffnen
out Zum Schreiben öffnen
trunc Stream-Inhalt beim Öffnen verwerfen
ate Unmittelbar nach dem Öffnen zum Ende des Streams positionieren
noreplace (C++23) Im exklusiven Modus öffnen

(typedef)
Formatierungsflags-Typ

Die folgenden Konstanten sind ebenfalls definiert:

Konstante Erklärung
dec Dezimalbasis für Integer-Ein-/Ausgabe verwenden: siehe std::dec
oct Oktalbasis für Integer-Ein-/Ausgabe verwenden: siehe std::oct
hex Hexadezimalbasis für Integer-Ein-/Ausgabe verwenden: siehe std::hex
basefield dec | oct | hex . Nützlich für Maskierungsoperationen
left Linksbündige Ausrichtung (fügt Füllzeichen rechts hinzu): siehe std::left
right Rechtsbündige Ausrichtung (fügt Füllzeichen links hinzu): siehe std::right
internal Interne Ausrichtung (fügt Füllzeichen an internem Designpunkt hinzu): siehe std::internal
adjustfield left | right | internal . Nützlich für Maskierungsoperationen
scientific Gleitkommatypen in wissenschaftlicher Notation generieren, oder Hex-Notation wenn kombiniert mit fixed : siehe std::scientific
fixed Gleitkommatypen in Festkommanotation generieren, oder Hex-Notation wenn kombiniert mit scientific : siehe std::fixed
floatfield scientific | fixed . Nützlich für Maskierungsoperationen
boolalpha Bool-Typ im alphanumerischen Format einfügen und extrahieren: siehe std::boolalpha
showbase Präfix für numerische Basis bei Integer-Ausgabe generieren, Währungsindikator bei monetärer Ein-/Ausgabe erfordern: siehe std::showbase
showpoint Dezimalpunkt-Zeichen bedingungslos für Gleitkommazahlen-Ausgabe generieren: siehe std::showpoint
showpos Plus-Zeichen für nicht-negative numerische Ausgabe generieren: siehe std::showpos
skipws Führende Leerzeichen vor bestimmten Eingabeoperationen überspringen: siehe std::skipws
unitbuf Ausgabe nach jeder Ausgabeoperation leeren: siehe std::unitbuf
uppercase Bestimmte Kleinbuchstaben durch entsprechende Großbuchstaben in bestimmten Ausgabeoperationen ersetzen: siehe std::uppercase

(Typdefinition)
Zustandstyp des Streams

Folgende Konstanten sind ebenfalls definiert:

Konstante Erklärung
goodbit kein Fehler
badbit nicht behebbarer Stream-Fehler
failbit Ein-/Ausgabeoperation fehlgeschlagen (Formatierungs- oder Extraktionsfehler)
eofbit zugehörige Eingabesequenz hat Dateiende erreicht

(Typdefinition)
Suchrichtungstyp

Folgende Konstanten sind ebenfalls definiert:

Konstante Erklärung
beg der Anfang eines Streams
end das Ende eines Streams
cur die aktuelle Position des Stream-Positionsindikators

(Typdefinition)
gibt den Ereignistyp an
(enum)
Callback-Funktionstyp
(typedef)

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
LWG 271 C++98 die Member-Typen char_type , traits_type , int_type , pos_type und off_type waren nicht definiert
( std::basic_istream und std::basic_ostream definieren beide diese Typen, was zu Mehrdeutigkeit führte)
definiere
diese Typen

Siehe auch