Spec-Zone.ru › C++

std::make_exception_ptr

Объявлено в заголовочном файле <exception>
template< class E >
std::exception_ptr make_exception_ptr( E e ) noexcept;
(начиная с C++11)
(constexpr начиная с C++26)

Создаёт std::exception_ptr, содержащий ссылку на копию e. Это выполняется так, как если бы был исполнен следующий код:

try
{
    throw e;
}
catch(...)
{
    return std::current_exception();
}

Параметры

e - объект исключения, на копию которого нужно создать ссылку

Возвращаемое значение

Экземпляр std::exception_ptr, содержащий ссылку на копию e, или экземпляр std::bad_alloc, или экземпляр std::bad_exception (см. std::current_exception).

Примечания

Параметр передаётся по значению и подвержен срезке.

Макрос проверки поддержки возможностей Значение Стандарт Возможность
__cpp_lib_constexpr_exceptions 202411L (C++26) constexpr для типов исключений

Пример

См. также

current_exception
(C++11)
сохраняет текущее исключение в std::exception_ptr
(функция)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/error/make_exception_ptr

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API