delete und delete[]
-
Warum gibt es deltet für ein Array und einmal ein Delte für alles andere? In C gibt’s ja auch nur free und malloc
-
In C gibts ja auch keine Destruktoren.
-
??? was hat das jetzt mit Destruktoren zu tun?
-
Der Konstruktor von jedem Objekt wird mit delete[] aufgerufen.
[EDIT] Quark. Natürlich der Destuktor.
-
Na weil die [] Variante erst die Destruktoren aller Objekte im Array aufruft und dann den Speicher freigibt.
Bei dem Delete mit ohne[] ruft er die Destruktoren nicht auf.
Steht ein ganz gutes Kapitel im "Thinking in C++" drin. (Tut-Sektion).
-
SeppSchrot schrieb:
Bei dem Delete mit ohne[] ruft er die Destruktoren nicht auf.
oder nur den vom ersten objekt.