Bonjour,
Lors de tests sous Visual Studio 2005, j'ai remarqué qu'en cas d'exception C++ non-gérée, le programme est tué avant qu'aucun destructeur soit appelé.
Est-ce normal ? Que dit la norme à ce sujet ?
Bonjour,
Lors de tests sous Visual Studio 2005, j'ai remarqué qu'en cas d'exception C++ non-gérée, le programme est tué avant qu'aucun destructeur soit appelé.
Est-ce normal ? Que dit la norme à ce sujet ?
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Salut,
Je dirais que c'est normal, c'est terminate() qui est appelé, d'après la norme (15.5.1), lorsqu'aucun 'handler' n'est trouvé pour une exception lancée, et :
MAT.Envoyé par 15.5.1.2
A priori Scott Meyers dans more effective c++ (petite note de la page 50) dit, qu'en qu'à d'exception non gérée lancée avant la fin d'un scope, que les objets alloués automatiquement dans ce scope ne verront pas forcément leur destructeur appelé.
Merci.
Je note donc que c'est implementation-defined.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager