Die Klasse Stringbuffer dient dazu, einzelne Zeichen zu längeren Texten zusammenzustellen, die dann an einem Stück verarbeitet werden können. Mehr ...
#include <strbuf.h>

Öffentliche Methoden | |
virtual | ~Stringbuffer () |
Destruktor (hier nichts zu tun) Mehr ... | |
Geschützte Methoden | |
Stringbuffer () | |
Konstruktor; Markiert Puffer als leer. Mehr ... | |
void | put (char c) |
Fügt das Zeichen c in den Puffer ein. Mehr ... | |
virtual void | flush ()=0 |
Methode zur Ausgabe des Pufferinhalts. Mehr ... | |
Geschützte Attribute | |
char | buffer [80] |
Zeichenpuffer. | |
int | pos |
Aktuelle Position im Puffer. | |
Ausführliche Beschreibung
Die Klasse Stringbuffer dient dazu, einzelne Zeichen zu längeren Texten zusammenzustellen, die dann an einem Stück verarbeitet werden können.
Damit ein möglichst vielseitiger Einsatz möglich ist, trifft die Klasse keine Annahme darüber, was "verarbeiten" in diesem Zusammenhang bedeutet. Nur der Zeitpunkt der Verarbeitung steht bereits fest, nämlich immer, wenn dies explizit gewünscht wird oder der Text so lang geworden ist, dass keine weiteren Zeichen hinzugefügt werden können. Dies geschieht durch Aufruf der Methode flush(). Da Stringbuffer geräteunabhängig sein soll, ist flush() eine virtuelle Methode, die von den abgeleiteten Klassen definiert werden muss.
- Hinweise zur Implementierung
- Zur Pufferung der Zeichen eignet sich ein fest dimensioniertes Feld, auf das die abgeleiteten Klassen zugreifen können müssen. Auch die Anzahl der Zeichen oder das zuletzt beschriebene Feldelement sollte in den spezialisierten flush() Methoden erkennbar sein.
- Anmerkung
- Anlass für die Einführung dieser Klasse war die Erkenntnis, dass Ausgaben eines Programmes sehr häufig aus vielen kleinen Komponenten bestehen, zum Beispiel, wenn die Namen und Inhalte von Variablen dargestellt werden sollen. Andererseits können wenige längere Texte meist viel effizienter ausgegeben werden als viele kurze. Daher erscheint es sinnvoll, vor der Ausgabe die einzelnen Komponenten mit Hilfe eines Stringbuffer Objekts zusammenzufügen und erst später, z. B. bei einem Zeilenumbruch, gesammelt auszugeben.
Beschreibung der Konstruktoren und Destruktoren
|
inlineprotected |
Konstruktor; Markiert Puffer als leer.
|
inlinevirtual |
Destruktor (hier nichts zu tun)
Dokumentation der Elementfunktionen
|
protectedpure virtual |
Methode zur Ausgabe des Pufferinhalts.
Diese Methode muss in den abgeleiteten Klassen definiert werden, denn nur diese wissen, wie die Zeichen ausgegeben werden können. flush() muss den Positionszeiger pos zurücksetzen.
Implementiert in O_Stream und CGA_Stream.
|
protected |
Fügt das Zeichen c in den Puffer ein.
Wenn der Puffer daraufhin voll ist, wird er durch Aufruf der Methode flush() geleert.
- Parameter
-
c Einzufügendes Zeichen
Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien:
- object/strbuf.h
- object/strbuf.cc