Ciao a tutti,
ho un problema con i Distruttori.
Questo è il main
Codice distruttoreCodice PHP:int main()
{
Huge Big(155),Big2(1000);
Huge Big3;
Big3=10000;
Big=10000;
cout<<Big;
system("PAUSE");
return EXIT_SUCCESS;
}
Codice PHP:Huge::~Huge()
{
cout<<"Oggetto Distrutto: "<<pointer<<endl;
delete [] pointer;
}
il codice funziona se tengo la parte legata al distruttore commentata, se invece "abilito" il distruttore ottengo questo output:
Oggetto distrutto:0x34AB;
Oggetto distrutto:0x34BC;
1234234432 // questo numero qui dovrebbe essere invece 10000, cioe il valore a cui inizializzo Big.
Come mai si ha questo comportamento? Il distruttore, anche se definito da me, non dovrebbe essere chiamato quando si esaurisce il lifetime della variabile?![]()
Perche se invece commento il mio distruttore tutto fila liscio come l'olio?
Grazie per le rispo! Salutiiiii![]()
![]()

Rispondi quotando