Opérateur delete avec les tableaux
Remonter à Opérateurs new et delete - Index
Les tableaux sont supprimés par l'opérateur delete[](). Vous devez utiliser la syntaxe
delete [] expression
lors de la suppression d'un tableau :
char * p;
void func()
{
p = new char[10]; // alloue 10 caractères
delete[] p; // supprime 10 caractères
}
La mention de la dimension du tableau dans l'expression delete était obligatoire pour les anciens compilateurs C++. Pour gérer le code pré-existant, le compilateur émet un avertissement et ignore toute taille spécifiée. Si vous aviez dans l'exemple précédent delete[10] p, vous obtiendriez à la compilation :
Avertissement : Taille de tableau pour delete ignorée dans fonction func()