Der Operator delete für Arrays

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Die Operatoren New und Delete - Index


Der Operator delete[]() dient zum Löschen von Arrays, dabei muss die Syntax

delete [] Ausdruck

benutzt werden.

char * p;
void func()
{
   p = new char[10];    // Platz für 10 Zeichen (Typ char)
   delete[] p;          // Löschen der 10 Zeichen mit delete
}

Ältere Versionen des C++-Compilers erforderten die Angabe der Array-Größe im Ausdruck für das Löschen. Um auch älteren Code behandeln zu können, gibt der Compiler eine Warnung aus und ignoriert jede Größenangabe. Wenn im vorigen Beispiel delete[10] p; stehen würde, so würde bei der Compilierung folgende Warnung ausgegeben:

Warnung: Größe des Arrays für 'delete' ignoriert in Funktion func()

Siehe auch