c++中类调用析构函数的原理解决办法

c++中类调用析构函数的原理
弱弱的问一个问题,当程序自动退出,或delete class 时,会调用其析构函数,原理是什么?
有高人解释一下吗?

------解决方案--------------------
因为“规定”,不需要“原理”
------解决方案--------------------
回收创建对象或者在构造函数中分配的内存空间
------解决方案--------------------
假设若不调用,那你每次退出程序,那这个申请的空间就不会被释放,那当你在此打开这个程序,在关闭,你重复个n次,可能就会内存泄漏。。。。。
------解决方案--------------------
...编译器干的活