001
13.09.2006, 19:41 Uhr
0xdeadbeef
Gott (Operator)
|
Nein, woher denn? Du kannst ja so ziemlich alles in einen ostream schieben. Bei eigenen Klassen macht man das dann normalerweise so:
C++: |
// fractint.hh
class FractInt { // ... friend std::ostream &operator<<(std::ostream &os, FractInt const &fi); };
std::ostream &operator<<(std::ostream &os, FractInt const &fi);
// fractint.cc
std::ostream &operator<<(std::ostream &os, FractInt const &fi) { return os << '(' << fi.mZaehler << ", " << fi.mNenner << ')'; }
|
Das mit dem friend kannste auch sein lassen, wenn FractInt public-Methoden zur Verfügung stellt, mit denen man auf die Daten, die der operator<< braucht, zugreifen kann. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra Dieser Post wurde am 13.09.2006 um 19:42 Uhr von 0xdeadbeef editiert. |