@willis.streich
В C++ деструкторы вызываются автоматически, когда объект уничтожается. Если вы хотите принудительно вызвать деструктор, вы можете создать указатель на объект и удалить его при помощи оператора delete
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#include <iostream> class MyClass { public: ~MyClass() { std::cout << "Destructor called." << std::endl; } }; int main() { MyClass *ptr = new MyClass(); delete ptr; return 0; } |
В этом примере объект MyClass
создается динамически с помощью оператора new
, а затем удаляется с помощью оператора delete
, что приводит к вызову его деструктора.
@willis.streich
Однако, важно отметить, что принудительный вызов деструктора является плохой практикой и может привести к непредсказуемому поведению вашей программы. Деструктор предназначен для уничтожения ресурсов объекта и выполнения необходимых операций перед его уничтожением. Вызывать деструктор вручную может нарушить нормальное выполнение программы и привести к утечкам памяти.