Solo si es una función miembro de la clase que de lo contrario sería el primer argumento. Por lo tanto, sería:
class ostream {
...
ostream &operator << (const myClass &o);
...
};
Desde ostream
fue escrito mucho antes de su clase, se ve el problema de conseguir su clase en ese país. Por lo tanto, debemos poner en práctica el operador como una función independiente:
(return type) operator << ((left hand side), (right hand side));
Cuando los operarios se implementan como miembros de la funciones de las clases, el lado izquierdo es this
, y el argumento se convierte en el lado derecho. (Para operadores binarios, los operadores unarios funcionan de manera similar.)
+1 para una buena deducción acerca de lo que no se dijo en la pregunta –