# Boost Exception

### exception

#include <boost/exception/exception.hpp>

    namespace
    boost
        {
        class
        exception
            {
            protected:

            exception();
            exception( exception const & x );
            ~exception();
            };
        }

Class boost::exception is designed to be used as a universal base for user-defined exception types.

An object of any type deriving from boost::exception can store data of arbitrary types, using the error_info wrapper and operator<<.

To retrieve data from a boost::exception object, use the get_error_info function template.

### See Also:

Boost Exception
boost/exception/diagnostic_information.hpp
boost/exception/exception.hpp
Configuration Macros
current_exception
current_exception_diagnostic_information
Diagnostic Information
diagnostic_information
Exception Types as Simple Semantic Tags
enable_current_exception
enable_error_info
errinfo_api_function
errinfo_at_line
errinfo_errno
errinfo_file_handle
errinfo_file_name
errinfo_file_open_mode
errinfo_type_info_name
error_info
exception/operator<<
exception::exception
exception::~exception
exception_ptr
Frequently Asked Questions
get_error_info
Integrating Boost Exception in Existing Exception Class Hierarchies
Motivation
Transporting of Arbitrary Data to the Catch Site
Transporting of Exceptions Between Threads
tuple/operator<<
Using Virtual Inheritance in Exception Types
unknown_exception