Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C++
Expertise: Intermediate
Aug 18, 2000



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Stack Unwinding in the Event of an Uncaught Exception

When an exception is thrown and no matching handler can be found for it, C++ invokes the function terminate(). By default, terminates invokes the function abort(). Some compilers guarantee that at this point, the stack has been unwound, i.e., all local automatic objects have been fully destructed, streams have been flushed, and open files have been closed. Other compilers don't unwind the stack in this case. In other words, whether the stack is unwound in the case of an uncaught exception is platform-defined. Therefore, you should check your compiler's documentation to know how it behaves in the event of an uncaught exception.
Danny Kalev
Thanks for your registration, follow us on our social networks to keep up-to-date