Пространства имён
Варианты
Действия

std::tx_exception

Материал из cppreference.com
 
 
Библиотека диагностики
Обработка исключений
Сбои обработки исключений
(до C++17*)
(до C++17*)
(C++11)(до C++17*)    
(до C++17*)
Коды ошибок
Коды ошибок
Категории исключений
(ТС TM)
Поддержка системных ошибок
(C++11)
(C++11)
Утверждения
Трассировка стека
 
<tbody> </tbody>
Определено в заголовочном файле <stdexcept>
template< class T > class tx_exception : public std::runtime_error;
(ТС TM)

Определяет тип исключения, который можно использовать для отмены и отката атомарной транзакции, инициированной ключевым словом atomic_cancel.

Если T не является TriviallyCopyable, программа, специализирующая std::tx_exception<T>, не корректна.

Функции-элементы

std::tx_exception::tx_exception

<tbody> </tbody>
explicit tx_exception( T value ) transaction_safe;
(1) (ТС TM)
tx_exception( T value, const std::string& what_arg ) transaction_safe;
(2) (ТС TM)
tx_exception( T value, const char* what_arg ) transaction_safe;
(3) (ТС TM)
tx_exception( const tx_exception& other ) transaction_safe noexcept;
(4) (ТС TM)
1-3) Создаёт объект исключения с what_arg в качестве пояснительной строки, к которой можно получить доступ через what(), и value в качестве объекта, к которому можно получить доступ через get().
4) Конструктор копирования. Если *this и other имеют динамический тип std::tx_exception<T>, тогда std::strcmp(what(), other.what()) == 0.

Параметры

value объект полезной нагрузки
what_arg пояснительная строка
other другой объект исключения для копирования

Исключения

1-3) Может генерировать исключения, определённые реализацией.

std::tx_exception::operator=

<tbody> </tbody>
tx_exception& operator=( const tx_exception& other ) transaction_safe noexcept;
(ТС TM)

Присваивает содержимое из other. Если *this и other имеют динамический тип std::tx_exception<T>, тогда std::strcmp(what(), other.what()) == 0 после присваивания.

Параметры

other другой объект исключения для присваивания

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

*this

std::tx_exception::get

<tbody> </tbody>
T get() const transaction_safe;
(ТС TM)

Возвращает объект полезной нагрузки, удерживаемый объектом исключения.

Исключения

Может генерировать исключения, определённые реализацией.

std::tx_exception::what

<tbody> </tbody>
virtual const char* what() const transaction_safe_dynamic noexcept;
(ТС TM)

Возвращает пояснительную строку.

Параметры

(нет)

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

Указатель на завершающуюся нулём строку с пояснительной информацией.

Унаследован от std::runtime_error


Унаследован от std::exception

Функции-элементы

уничтожает объект исключения
(virtual public of std::exception функция-элемент) [править]
[virtual]
возвращает поясняющую строку
(virtual public of std::exception функция-элемент) [править]