Ho sentito che viene utilizzato come operatore di overload + per esempioL'utilizzo di unario più dell'operatore
class MyClass
{
int x;
public:
MyClass(int num):x(num){}
MyClass operator+(const MyClass &rhs)
{
return rhs.x + x;
}
};
int main()
{
MyClass x(100);
MyClass y(100);
MyClass z = x + y;
}
Questa è davvero l'uso di unario più dell'operatore o è davvero un operatore binario +?
Potrebbe restituire un 'riferimento' invece un valore? – user963241
@cpx sì ma probabilmente sarebbe una cattiva idea, perché tutti i tipi come 'int' producono anche un valore, invece di un riferimento alla variabile originale. "Fai come gli inti" (Scott Meyers). –