Класс nested_exception
Класс описывает исключение для использования с несколькими наследованием. Он фиксирует текущее обработанное исключение и сохраняет его для последующего использования.
Синтаксис
class nested_exception {
public:
nested_exception();
nested_exception(const nested_exception&) = default;
virtual ~nested_exception() = default; // access functions
};
Участники
Операторы
Имя | Описание |
---|---|
operator= | Оператор присвоения. |
Функции
Имя | Описание |
---|---|
rethrow_nested | Создает хранимый исключение. |
nested_ptr | Возвращает хранимый исключение. |
operator=
nested_exception& operator=(const nested_exception&) = default;
nested_ptr
exception_ptr nested_ptr() const;
Возвращаемое значение
Хранимый исключение, захваченное этим nested_exception
объектом.
rethrow_nested
[[noreturn]] void rethrow_nested() const;
Замечания
Если nested_ptr()
возвращается указатель null, функция вызывается std::terminate()
. В противном случае создается хранимый исключение, захваченный *this
.
Требования
Заголовок:<exception>
Пространство имен: std
См. также
Класс exception
Потокобезопасность в стандартной библиотеке C++