请问:C++析构函数中系统做了哪些工作
小弟在阅读程序时,发现程序运行顺序中,析构函数之前的一个函数作了与析构函数同样的工作。比如:关闭一个应用程序时,ONCLOSE函数作了一连串的工作,在其最后调用一个函数ONCLOSEBOX,其用于检查应用程序对应线程是否未删除,如未删除,则发消息删除。如未获得线程ID,则弹头出对话框说明无效的ID。而在该应用程序的相应的析构函数中作了与ONCLOSEBOX函数相同的工作。我认为在ONCLOSEBOX中已经发消息来删除线程了,如果在析构函数中再来获得线程ID的话,此时为空,会弹出ID无效的对话框的。且我在析构函数中设断点,程序顺利退出,并未被断点阻断。
我想问下,我分析的对不对。析构函数中系统做了些什么工作呢,为何未运行析构函数呢?为此,会不会出现内存泄露呢?