(5) Usa la stessa forma nei corrispondenti new e delete.
Le due forme degli operatori per la gestione della memoria sono relative alla gestione di un singolo oggetto o di un array (usando le parentesi quadre).
Quando si alloca un array di oggetti, usando la forma new[], occorre deallocarli usando la corrispondente delete[], altrimenti si causerà un comportamento indefinito del nostro codice.
Questo il modo corretto di allocare/deallocare memoria per un singolo oggetto e per un array di oggetti:
string* pString = new string;
string* strings = new string[100];
// ...
delete pString;
delete[] strings;
Nessun commento:
Posta un commento