Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Exception Handling under /clr

Exception Handling under /clr

You can use both structured exception handling (SEH) and C++ exception handling under /clr. Under /clr, you can also handle CLR exceptions. A CLR exception is any exception thrown by a managed type. The System::Exception class provides many useful methods for processing CLR exceptions and is recommended as a base class for user-defined exception classes.


Catching exception types derived from an interface is not supported under /clr. Also, the common language runtime does not permit you to catch stack overflow exceptions; a stack overflow exception will terminate the process.

Basic Concepts in Using Managed Exceptions

Describes throwing exceptions and using try/catch blocks.

Differences in Exception Handling Behavior Under /CLR

Discusses the differences from the standard behavior of C++ exception handling.


Discusses how to use the finally keyword.

How to: Define and Install a Global Exception Handler

Demonstrates how unhandled exceptions can be captured.

How to: Catch Exceptions in Native Code Thrown from MSIL

Discusses how to catch CLR and C++ exceptions in native code.

How to: Define and Install a Global Exception Handler

Demonstrates how to catch all unhandled exceptions.

Exception Handling

Describes exception handling in C++.

Community Additions

© 2015 Microsoft