std:: strstreambuf
|
Definiert im Header
<strstream>
|
||
|
class
strstreambuf
:
public
std::
basic_streambuf
<
char
>
|
(veraltet in C++98)
(entfernt in C++26) |
|
std::strstreambuf
ist ein
std::basic_streambuf
, dessen zugehörige Zeichenfolge ein Zeichenarray ist, das konstant sein kann (z.B. ein String-Literal), modifizierbar aber nicht dynamisch (z.B. ein stack-allokiertes Array) oder dynamisch, wobei der
std::strstreambuf
möglicherweise das Array bei Bedarf neu allokieren darf, um die Ausgabe aufzunehmen (z.B. durch Aufruf von
delete
[
]
und
new
[
]
oder benutzerdefinierter Funktionen).
Typische Implementierung eines
std::strstreambuf
enthält vier private Datenmitglieder:
Inhaltsverzeichnis |
Hinweise
Nach jedem Aufruf von
str()
auf einem Stream mit dynamischem Puffer ist ein Aufruf von
freeze(false)
erforderlich, um dem
strstreambuf
-Destruktor zu ermöglichen, den Puffer bei Bedarf freizugeben.
strstreambuf
ist seit C++98 als veraltet markiert und wurde seit C++26 entfernt
. Die empfohlene Ersetzung ist
std::spanbuf
(seit C++23)
.
Memberfunktionen
Öffentliche Elementfunktionen |
|
konstruiert ein
strstreambuf
-Objekt
(öffentliche Elementfunktion) |
|
|
[virtual]
|
zerstört ein
strstreambuf
-Objekt, optional unter Freigabe des Zeichenarrays
(virtuelle öffentliche Elementfunktion) |
|
setzt/löscht den eingefrorenen Zustand des Puffers
(öffentliche Elementfunktion) |
|
|
markiert den Puffer als eingefroren und gibt den Startzeiger der Eingabesequenz zurück
(öffentliche Elementfunktion) |
|
|
gibt den nächsten Zeiger minus dem Startzeiger in der Ausgabesequenz zurück: die Anzahl geschriebener Zeichen
(öffentliche Elementfunktion) |
|
Geschützte Elementfunktionen |
|
|
[virtual]
|
liest ein Zeichen aus der Eingabesequenz ohne den nächsten Zeiger zu bewegen
(virtuelle geschützte Elementfunktion) |
|
[virtual]
|
bewegt die Eingabesequenz zurück, um ein Zeichen zurückzustellen
(virtuelle geschützte Elementfunktion) |
|
[virtual]
|
fügt ein Zeichen an die Ausgabesequenz an, kann den Puffer neu allozieren oder initial allozieren wenn dynamisch und nicht eingefroren
(virtuelle geschützte Elementfunktion) |
|
[virtual]
|
versucht die gesteuerte Zeichensequenz durch ein Array zu ersetzen
(virtuelle geschützte Elementfunktion) |
|
[virtual]
|
positioniert den nächsten Zeiger in der Eingabesequenz, Ausgabesequenz oder beiden neu, unter Verwendung relativer Adressierung
(virtuelle geschützte Elementfunktion) |
|
[virtual]
|
positioniert den nächsten Zeiger in der Eingabesequenz, Ausgabesequenz oder beiden neu unter Verwendung absoluter Adressierung
(virtuelle geschützte Elementfunktion) |
Geerbt von std:: basic_streambuf
Mitgliedertypen
| Mitgliedtyp | 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
|
[virtuell]
|
zerstört das
basic_streambuf
-Objekt
(virtuelle öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
Locales |
|
|
ändert die assoziierte Locale und ruft
imbue
(
)
auf
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
erhält eine Kopie der assoziierten Locale
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
Positionierung |
|
|
ruft
setbuf
(
)
auf
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
ruft
seekoff
(
)
auf
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
ruft
seekpos
(
)
auf
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
ruft
sync
(
)
auf
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
Lesebereich |
|
|
ermittelt die Anzahl der sofort verfügbaren Zeichen im Lesebereich
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
bewegt die Eingabesequenz vor und liest ein Zeichen ohne erneute Bewegung
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
(entfernt in C++17)
|
liest ein Zeichen aus der Eingabesequenz und bewegt die Sequenz vor
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
liest ein Zeichen aus der Eingabesequenz ohne Bewegung der Sequenz
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
ruft
xsgetn
(
)
auf
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
Schreibbereich |
|
|
schreibt ein Zeichen in den Schreibbereich und bewegt den nächsten Zeiger
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
ruft
xsputn
(
)
auf
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
Zurücklegen |
|
|
legt ein Zeichen in der Eingabesequenz zurück
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
|
bewegt den nächsten Zeiger in der Eingabesequenz um eine Position zurück
(öffentliche Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
Geschützte Memberfunktionen
konstruiert ein
basic_streambuf
Objekt
(geschützte Elementfunktion) |
|
|
(C++11)
|
ersetzt ein
basic_streambuf
Objekt
(geschützte Elementfunktion) |
|
(C++11)
|
tauscht zwei
basic_streambuf
Objekte aus
(geschützte Elementfunktion) |
Locales |
|
|
[virtual]
|
reagiert auf eine Änderung des assoziierten Locale
(virtuelle geschützte Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
Positionierung |
|
|
[virtual]
|
ersetzt den Puffer durch ein benutzerdefiniertes Array, falls erlaubt
(virtuelle geschützte Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
[virtual]
|
positioniert den nächsten Zeiger in der Eingabesequenz, Ausgabesequenz oder beiden neu, unter Verwendung relativer Adressierung
(virtuelle geschützte Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
[virtual]
|
positioniert den nächsten Zeiger in der Eingabesequenz, Ausgabesequenz oder beiden mittels absoluter Adressierung neu
(virtuelle geschützte Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
[virtual]
|
synchronisiert die Puffer mit der assoziierten Zeichensequenz
(virtuelle geschützte Elementfunktion von
std::basic_streambuf<CharT,Traits>
)
|
Bereich abrufen |
|
|
[virtual]
|
Ermittelt die Anzahl der für die Eingabe verfügbaren Zeichen in der zugehörigen Eingabesequenz, falls bekannt
(geschützte virtuelle Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
[virtual]
|
Liest Zeichen aus der zugehörigen Eingabesequenz in den Get-Bereich
(virtuelle geschützte Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
[virtual]
|
Liest Zeichen aus der zugehörigen Eingabesequenz in den Get-Bereich und bewegt den nächsten Zeiger vorwärts
(virtuelle geschützte Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
[virtual]
|
liest mehrere Zeichen aus der Eingabesequenz
(virtuelle geschützte Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
gibt einen Zeiger auf den Anfang, das aktuelle Zeichen und das Ende des Lesebereichs zurück
(geschützte Elementfunktion) |
|
|
bewegt den nächsten Zeiger in der Eingabesequenz vor
(geschützte Elementfunktion) |
|
|
positioniert die Anfangs-, Nächste- und End-Zeiger der Eingabesequenz neu
(geschützte Elementfunktion) |
|
Put-Bereich |
|
|
[virtual]
|
Schreibt mehrere Zeichen in die Ausgabesequenz
(geschützte virtuelle Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
[virtual]
|
Schreibt Zeichen in die zugehörige Ausgabesequenz aus dem Put-Bereich
(virtuelle geschützte Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|
|
gibt einen Zeiger auf den Anfang, das aktuelle Zeichen und das Ende des Put-Bereichs zurück
(geschützte Member-Funktion) |
|
|
bewegt den nächsten Zeiger der Ausgabesequenz vorwärts
(geschützte Elementfunktion) |
|
|
positioniert die Anfangs-, Nächste- und End-Zeiger der Ausgabesequenz neu
(geschützte Elementfunktion) |
|
Putback |
|
|
[virtual]
|
setzt ein Zeichen zurück in die Eingabesequenz und modifiziert möglicherweise die Eingabesequenz
(geschützte virtuelle Memberfunktion von
std::basic_streambuf<CharT,Traits>
)
|