Streams: Einführung

Für die Sprache C++ selbst wurde keine verbindliche Ein-/Ausgabe definiert, d.h. wenn man einen C++-Compiler schreiben wollte, so gäbe es keine genaue Vorschrift, ob und wie eine Ein-/Ausgabe zu implementieren ist. Da man natürlich ein Mittel zur Ein-/Ausgabe benötigt, wurde dies bei den verschiedenen C++-Compilern in Form einer Klassenbibliothek implementiert. Es gibt jedoch z.Zt. auch noch keine genaue Definition einer Standard-Ein-/Ausgabebibliothek, so daß sich die Bibliotheken von Implementierung zu Implementierung unterscheiden. Dennoch hat sich ein gewisser Quasi-Standard durchgesetzt, der von fast allen C++-Compilern unterstützt wird und der für unsere Belange völlig ausreichend ist. Die hier vorgestellten Anwendungsbeispiele sollten daher -- unter Einbindung der entsprechenden Standardbibliotheken -- unter allen C++-Compilern lauffähig sein. Im Zweifelsfalle sind die Handbücher des Compilers heranzuziehen.

Das Standard-I/O ist also bei C++ in der Sprache selbst implementiert, d.h. über die Spezifikation und Implementation entsprechender Klassen. Dies hat den Vorteil, daß man die bereits kennengelernten Methoden des Überladens von Operatoren nutzen kann, um den I/O eigener Typen bzw. Klassen effizient und elegant zu realisieren.

Die benötigte Benutzerschnittstellen befinden sich in dem File <iostream.h>. Für die folgenden Beispiele ist diese headerdatei stets einzubinden.