Per evitare qualcosa del genere:
Il puntatore è cancellato tre volte di cui solo la prima è valida.codice:class Test { public: Test() : ptr(new char[16]) {} ~Test() { delete [] ptr; } private: char* ptr; }; int main (void) { /* riduce lo scope */ { Test t; Test t1 = t; Test t2; t2 = t; } // errore di accesso. }
Ci sono altri motivi per inibire la copia e/o l'assegnazione, ma questo è il principale.

Rispondi quotando