4.7 Benutzerdefinierte Erweiterungen
  • Iostreams können für eigene Klassen erweitert werden.
  • Dazu müssen die Operatoren << und >> überladen werden.
  • Syntax:

             ostream& operator<<(ostream& stream, const Klasse& class);
             istream& operator>>(istream& stream, const Klasse& class);
  • Da der erste Operand nicht die Klasse, sondern immer der Datenstrom ist, kann die Operatorfunktion keine Member-Funktion sein. Ggf. muss sie als friend der Klasse definiert werden.
  • Damit die Operatorfunktion in Ein-Ausgabe-Ketten eingebaut werden kann, muss sie eine Referenz auf den Strom zurück geben.