E2158 L'opérande de 'delete' doit être un pointeur non-const (C++)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Erreurs et avertissements du compilateur (C++) - Index

Vous ne pouvez pas supprimer une variable autre qu'un pointeur ni un pointeur sur une constante.

Par exemple :

const int x=10;
   const int * a = &x;
   int * const b = new int;
   int &c = *b;
   delete a;   //incorrect - suppression d'un pointeur sur une constante
   delete b;   //correct
   delete c;   //illégal - l'opérande n'est pas de type pointeur
               //utilisez 'delete&c' à la place