Wird exit () oder eine Ausnahme verhindern, dass ein End-of-Scope-Destruktor aufgerufen wird?
Sagen wir, ich habe den folgenden Code:
struct mytype
{
~mytype() { /* do something like call Mix_CloseAudio etc */ }
};
int main()
{
mytype instant;
init_stuff();
start();
return 0;
}
Ist dieser Destruktor garantiert aufgerufen, auch wenn exit () von irgendwo innerhalb von start () verwendet wird?