Una cosa simile l'ho sfruttata anche per fare l'overload dell'operatore=,
Però facendo così rischio quasi sicuramente un memory leak: o faccio delete prima di assegnare il nuovo 'valore' a mPuntatore o passo agli smartpointer, credo in questo caso unique_ptr per mPuntatore.codice:void Prova::operator=(const Prova& da_copiare) { mPuntatore=da_copiare.mPuntatore->clone(); }
Con l'operatore di copia non ho questo rischio in quanto sto creando l'oggetto, ho capito giusto?