¿Por qué es que a veces una anulación del operador se define como un método en la clase, como¿Por qué los operadores son a veces independientes y, a veces, métodos de clase?
MyClass& MyClass::operatorFoo(MyClass& other) { .... return this; };
ya veces es una función separada, como
MyClass& operatorFoo(MyClass& first, MyClass& bar)
¿Son equivalentes? ¿Qué reglas gobiernan cuando lo haces de una manera y cuando lo haces la otra?
voy a votar a cerrar como un duplicado de http://stackoverflow.com/questions/1145022 (Evidentemente mi búsqueda-fu no era bueno) –
posible duplicado de [ diferencia entre el operador global y el operador miembro] (http://stackoverflow.com/questions/1145022/difference-between-global-operator-and-member-operator) –