Quote:
Originariamente inviato da mistergks
Ho capito l importanza e lo scopo della ridefinizione degli operatori per gli oggetti.
Quello che non capisco è come farlo.
Ad esempio l'operatore + ha un solo parametro.
Non servirebbero due parametri?
Tipo se io volessi fare l'operazione a+b... Non è come richiamare la funzione operator+(a,b) ?
|
Fai come t'ha detto Kendall, oppure:
Codice:
class A
{
private:
int b;
friend int operator+(const A& left, const A& right);
};
// FUORI dalla classe
inline
int operator+(const A& left, const A& right)
{
// Questo operatore è stato dichiarato friend così può accedere al membro private degli oggetti di classe A, cioè b
return left.b + right.b;
}
A quanto ho capito non c'è un metodo migliore...ma non ho investigato molto. Io preferisco i metodi NON membri.