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

std::exception::operator=

Материал из cppreference.com
< cpp‎ | error‎ | exception
 
 
Библиотека утилит
Языковая поддержка
Поддержка типов (базовые типы, RTTI)
Макросы тестирования функциональности библиотеки (C++20)    
Управление динамической памятью
Программные утилиты
Поддержка сопрограмм (C++20)
Вариативные функции
Трёхстороннее сравнение (C++20)
(C++20)
(C++20)(C++20)(C++20)(C++20)(C++20)(C++20)
Общие утилиты
Дата и время
Функциональные объекты
Библиотека форматирования (C++20)
(C++11)
Операторы отношения (устарело в C++20)
Целочисленные функции сравнения
(C++20)(C++20)(C++20)    
(C++20)
Операции обмена и типа
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Общие лексические типы
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
Элементарные преобразования строк
(C++17)
(C++17)
 
Библиотека диагностики
Обработка исключений
Сбои обработки исключений
(до C++17*)
(до C++17*)
(C++11)(до C++17*)    
(до C++17*)
Коды ошибок
Коды ошибок
Категории исключений
(ТС TM)
Поддержка системных ошибок
(C++11)
(C++11)
Утверждения
Трассировка стека
 
std::exception
Функции-элементы
exception::operator=
 
exception& operator=( const exception& other ) throw();
(до C++11)
exception& operator=( const exception& other ) noexcept;
(начиная с C++11)

Оператор присваивания копированием. Присваивает содержимое other.

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

[править] Параметры

other другое исключение для присваивания содержимого

[править] Отчёты о дефектах

Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:

Номер Применён Поведение в стандарте Корректное поведение
LWG 471 C++98 эффекты вызова what() после присваивания
определяются реализацией
должны быть таким же, как и у исходного what(),
если динамические типы одинаковы