# 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:

Configuration Macros | current_exception | current_exception_diagnostic_information | Diagnostic Information | diagnostic_information | diagnostic_information_what | enable_current_exception | enable_error_info | error_info | exception_ptr | Frequently Asked Questions | get_error_info | Motivation | Transporting of Arbitrary Data to the Catch Site | Transporting of Exceptions Between Threads | throw_exception | tuple/operator<< | unknown_exception