Udostępnij za pośrednictwem


Jak działa słowo kluczowe delete

Operator delete wywołuje funkcję operator delete.

Dla obiektów typu innej niż klasy (class, struct, lub union), globalny operator delete jest wywoływany.Dla obiektów typu klasy, nazwa funkcji dealokacji w zakresie globalnym jest rozpoznawana, jeśli wyrażenie delete rozpoczyna operator jednoargumentowy zakresu rozdzielczości (::).W przeciwnym razie, operatora delete wywołuje destruktor dla obiektu, przed cofnięciem alokacji pamięci (jest wskaźnik nie jest null).Operator delete można zdefiniować na podstawie na klasy; jeśli nie ma takiej definicji dla danej klasy, globalny operator delete jest wywoływany.Jeśli wyrażenie delete jest używane do zwolnienia pamięci klasy obiekt, którego typ statyczny ma wirtualny destruktor, funkcja dezalokacji jest rozpoznawana za pomocą wirtualnych destruktorów dynamicznego typu obiektu.

Zobacz też

Informacje

Wyrażenia z operatorami jednoargumentowymi