【发布时间】:2011-02-09 17:13:10
【问题描述】:
假设我有以下代码:
struct mytype
{
~mytype() { /* do something like call Mix_CloseAudio etc */ }
};
int main()
{
mytype instant;
init_stuff();
start();
return 0;
}
即使从 start() 内部的某处使用 exit(),是否也保证调用该析构函数?
【问题讨论】:
-
异常会调用析构函数,
exit()不会。 -
不完全是这种情况,但我在带有 GCC 的 Linux 上调用了静态对象的析构函数。
标签: c++ destructor exit