Attualmente sto aggiornando le mie competenze in C++ e mi chiedevo se fosse possibile assegnare qualcosa a *this
. So che assegnare a this
è vietato, ma non riesco a trovare le stesse informazioni per il mio caso.E 'consentito assegnare a un utente non autorizzato (* questo)?
Un esempio:
class Foo {
int x;
public:
Foo(int x) : x(x) {}
Foo incr() { return Foo(x+1); }
void incr_() { (*this) = incr(); }
};
Edit: corretto incr()
's tipo di ritorno da void
a Foo
.
Questo sarebbe stato più adatto come commento che come risposta, IMO. –
@Etienne: Lemme completa prima la mia risposta. ':' –
Hai perfettamente ragione, ma ho semplicemente commesso un errore lì. Intendevo che la funzione fosse 'Foo incr()'. – Kolja