Middle
Welche zwei Arten von delete-Operatoren gibt es in C++?
sobes.tech KI
Antwort von AI
- Gewöhnlicher
delete-Operator: Wird verwendet, um den Speicher freizugeben, der für ein einzelnes Objekt mit demnew-Operator reserviert wurde. delete[]-Operator: Wird verwendet, um den Speicher freizugeben, der für ein Array von Objekten mit demnew[]-Operator reserviert wurde. Beim Einsatz vondelete[]werden die Destruktoren aller Elemente des Arrays in umgekehrter Reihenfolge ihrer Erstellung aufgerufen.
Die Verwendung des falschen delete-Operators (z.B. delete für ein Array oder delete[] für ein einzelnes Objekt) führt zu undefiniertem Verhalten.
Beispiel:
// Gewöhnlicher delete-Operator
int* einzelnes_objekt = new int(10);
// ... Verwendung von einzelnes_objekt
delete einzelnes_objekt;
// delete[] für Array
int* array_von_objekten = new int[5];
// ... Verwendung von array_von_objekten
delete[] array_von_objekten;