Основные сценарии использования деструкторов в объектно-ориентированном программировании:
- Освобождение памяти, занимаемой объектом. 3 Деструктор вызывается автоматически, когда объект выходит из области видимости: для локальных переменных — при выходе из блока, в котором они объявлены, для глобальных — как часть процедуры выхода из main. 3
- Уничтожение динамических объектов. 3 Для динамических объектов деструктор вызывается при уничтожении объекта операцией delete. 3
- Освобождение ресурсов. 1 Функция деструктора освобождает ранее выделенные ресурсы, например, память буфера или открытый файл. 1
Также деструктор может вызываться явным образом путём указания полностью уточнённого имени, это необходимо для объектов, которым с помощью new выделялся конкретный адрес. 3