Nur wenn es eine Memberfunktion der Klasse ist, die andernfalls das erste Argument wäre. So wäre es:
class ostream {
...
ostream &operator << (const myClass &o);
...
};
Seit ostream
geschrieben wurde lange vor Ihrer Klasse finden Sie das Problem Ihre Klasse in dorthin zu gelangen. Daher müssen wir die Bediener als freistehende Funktion implementieren:
(return type) operator << ((left hand side), (right hand side));
Wenn Betreiber als Mitglied-Funktionen von Klassen implementiert werden, die linke Seite ist this
, und das Argument wird die rechte Seite. (Für binäre Operatoren - unäre Operatoren funktionieren ähnlich.)
+1 für einen guten Abzug über das, was in der Frage ungesagt wurde –