std::basic_ios
| Definiert in Header <ios> |
||
| template< class CharT, |
||
Die Klasse std::basic_ios stellt Einrichtungen zur Verfügung, um mit Objekten zu interagieren, die die Schnittstelle std::basic_streambuf aufweisen. Mehrere std::basic_ios-Objekte können auf dasselbe tatsächliche std::basic_streambuf-Objekt verweisen.
Vererbungdiagramm
Mehrere Typedefs für gängige Zeichentypen werden bereitgestellt
| Definiert in Header
<ios> | |
| Typ | Definition |
std::ios
|
std::basic_ios<char> |
std::wios
|
std::basic_ios<wchar_t> |
Inhalt |
[bearbeiten] Member-Typen
| 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 |
[bearbeiten] Öffentliche Memberfunktionen
| konstruiert das Objekt (öffentliche Memberfunktion) | |
| [virtuell] |
destruiert das Objekt (virtuelle öffentliche Memberfunktion) |
| operator= |
der Copy-Assignment-Operator ist gelöscht (öffentliche Memberfunktion) |
Zustandsfunktionen | |
| prüft, ob kein Fehler aufgetreten ist, d.h. I/O-Operationen verfügbar sind (öffentliche Memberfunktion) | |
| prüft, ob das Dateiende erreicht wurde (öffentliche Memberfunktion) | |
| prüft, ob ein Fehler aufgetreten ist (öffentliche Memberfunktion) | |
| prüft, ob ein nicht behebbbarer Fehler aufgetreten ist (öffentliche Memberfunktion) | |
| prüft, ob ein Fehler aufgetreten ist (Synonym für fail()) (öffentliche Memberfunktion) | |
prüft, ob kein Fehler aufgetreten ist (Synonym für !fail())(öffentliche Memberfunktion) | |
| gibt Zustandsflags zurück (öffentliche Memberfunktion) | |
| setzt Zustandsflags (öffentliche Memberfunktion) | |
| modifiziert Zustandsflags (öffentliche Memberfunktion) | |
Formatierung | |
| kopiert Formatierungsinformationen (öffentliche Memberfunktion) | |
| verwaltet das Füllzeichen (öffentliche Memberfunktion) | |
Sonstiges | |
| verwaltet die Exception-Maske (öffentliche Memberfunktion) | |
| setzt die Locale (öffentliche Memberfunktion) | |
| verwaltet den zugehörigen Stream-Puffer (öffentliche Memberfunktion) | |
| verwaltet den gebundenen Stream (öffentliche Memberfunktion) | |
| verengt Zeichen (öffentliche Memberfunktion) | |
| erweitert Zeichen (öffentliche Memberfunktion) | |
[bearbeiten] Geschützte Memberfunktionen
| initialisiert ein standardkonstruiertes std::basic_ios (geschützte Memberfunktion) | |
| (C++11) |
verschiebt aus einem anderen std::basic_ios außer rdbuf(geschützte Memberfunktion) |
| (C++11) |
tauscht mit einem anderen std::basic_ios außer rdbuf(geschützte Memberfunktion) |
ersetzt den rdbuf, ohne dessen Fehlerstatus zu löschen(geschützte Memberfunktion) |
Geerbt von std::ios_base
Memberfunktionen
Formatierung | |
| verwaltet Formatierungsflags (public member function of std::ios_base) | |
| setzt spezifische Formatierungsflags (public member function of std::ios_base) | |
| löscht spezifische Formatierungsflags (public member function of std::ios_base) | |
| verwaltet die Dezimalgenauigkeit von Fließkommaoperationen (public member function of std::ios_base) | |
| verwaltet die Feldbreite (public member function of std::ios_base) | |
Lokale | |
| setzt Locale (public member function of std::ios_base) | |
| gibt die aktuelle Locale zurück (public member function of std::ios_base) | |
Internes erweiterbares Array | |
| [static] |
gibt eine programmweite eindeutige Ganzzahl zurück, die sicher als Index für pword() und iword() verwendet werden kann (public static member function of std::ios_base) |
| vergrößert den privaten Speicher bei Bedarf und greift auf das long-Element am gegebenen Index zu (public member function of std::ios_base) | |
| vergrößert den privaten Speicher bei Bedarf und greift auf das void*-Element am gegebenen Index zu (public member function of std::ios_base) | |
Sonstiges | |
| registriert eine Callback-Funktion für Ereignisse (public member function of std::ios_base) | |
| [static] |
legt fest, ob C++ und C E/A-Bibliotheken interoperabel sind (public static member function of std::ios_base) |
Member-Klassen | |
| Stream-Exception (public member class of std::ios_base) | |
| initialisiert Standard-Stream-Objekte (public member class of std::ios_base) | |
Member-Typen und Konstanten | |||||||||||||||||||||||||||||||||||||||
| Typ | Erklärung | ||||||||||||||||||||||||||||||||||||||
| Stream-Öffnungsmodus-Typ Folgende Konstanten sind ebenfalls definiert
(typedef) | |||||||||||||||||||||||||||||||||||||||
| Typ der Formatierungsflags Folgende Konstanten sind ebenfalls definiert
(typedef) | |||||||||||||||||||||||||||||||||||||||
| Zustand des Stream-Typs Folgende Konstanten sind ebenfalls definiert
(typedef) | |||||||||||||||||||||||||||||||||||||||
| Typ der Suchrichtung Folgende Konstanten sind ebenfalls definiert
(typedef) | |||||||||||||||||||||||||||||||||||||||
| spezifiziert den Ereignistyp (enum) | |||||||||||||||||||||||||||||||||||||||
| Callback-Funktionstyp (typedef) | |||||||||||||||||||||||||||||||||||||||
[bearbeiten] Anmerkungen
Eine einfache Implementierung von std::basic_ios speichert nur die folgenden Member (die alle von den Template-Parametern abhängen und somit nicht Teil von std::ios_base sein können)
- das Füllzeichen (siehe
fill()) - der Zeiger auf den verbundenen Stream (siehe
tie()) - der Zeiger auf den zugehörigen Stream-Buffer (siehe
rdbuf()).
Tatsächliche Implementierungen variieren
Microsoft Visual Studio speichert nur diese drei Member.
LLVM libc++ speichert 1 Member weniger: Es verwaltet den rdbuf-Zeiger als void*-Member von ios_base.
GNU libstdc++ speichert 4 zusätzliche Member: drei gecachte Facetten und ein Flag, das anzeigt, dass die Füllzeicheninitialisierung stattgefunden hat.