Есть ли разница между определением глобального оператора, который берет две ссылки для класса и определяет оператор-член, который принимает только правый операнд?
Global:
class X
{
public:
int value;
};
bool operator==(X& left, X& right)
{
return left.value == right.value;
};
Статус:
class X
{
int value;
bool operator==( X& right)
{
return value == right.value;
};
}