Disons que j'ai le code suivant:Est-ce que exit() ou une exception empêchera l'appel d'un destructeur de fin d'étendue?
struct mytype
{
~mytype() { /* do something like call Mix_CloseAudio etc */ }
};
int main()
{
mytype instant;
init_stuff();
start();
return 0;
}
Est-ce destructor garanti d'être appelé, même si la sortie() est utilisée de quelque part à l'intérieur de début()?
exceptions appellera le destructeur, 'exit()' ne le fera pas. – falstro
Pas exactement ce cas mais j'ai des destructeurs appelés * objets statiques * sur Linux avec GCC. –