Visual C++ Vers 2.0 README.WRI, Part 5 C++ Exception Handling
Article ID: 120921
Article Last Modified on 10/17/2003
APPLIES TO
- Microsoft Visual C++ 2.0 Professional Edition, when used with:
This article was previously published under Q120921
SUMMARY
The following is based on the Visual C++ version 2.0 README.WRI file:
Interaction Between setjmp/longjmp and C++ Exception Handling
The use of setjmp and longjmp is strongly discouraged in C++ programs.
However, if you use these functions and compile with the /GX option (Enable
Exception Handling), destructors for local objects will be called during
the stack unwind. Note that the use of setjmp and longjmp in C++ programs
may degrade performance by preventing optimization on local variables.
This interaction between setjmp/longjmp and C++ exception handling is
supported only when you include SETJMP.H or SETJMPEX.H.
If you are writing code that is intended to be portable, do not rely on
correct destruction of frame-based objects when executing a non-local goto
using a call to longjmp. The use of C++ exception handling try/catch
constructs is recommended in C++ programs instead of setjmp and longjmp.
Additional query words: 2.00
Keywords: KB120921