std::error_condition::operator=
Материал из cppreference.com
<tbody>
</tbody>
template< class ErrorConditionEnum > error_condition& operator=( ErrorConditionEnum e ) noexcept; |
(1) | (начиная с C++11) |
error_condition& operator=( const error_condition& other ) = default; |
(2) | (начиная с C++11) (объявлено неявно) |
error_condition& operator=( error_condition&& other ) = default; |
(3) | (начиная с C++11) (объявлено неявно) |
Присваивает содержимое условию ошибки.
1) Присваивает условие ошибки для перечисления
e. Эффективно вызывает make_error_condition, которую можно найти только с помощью поиска, зависящего от аргумента для e, а затем заменяет *this результатом. Эта перегрузка участвует в разрешении перегрузки, только если std::is_error_condition_enum<ErrorConditionEnum>::value равно true.2,3) Неявно определённые оператор копирования присваиванием и оператор перемещения присваиванием присваивают содержимое
other элементу *this.Параметры
| e | — | перечисление условий ошибки |
| other | — | другое условие ошибки для присваивания |
Возвращаемое значение
*this.
Отчёты о дефектах
Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:
| Номер | Применён | Поведение в стандарте | Корректное поведение |
|---|---|---|---|
| LWG 3629 | C++11 | использовались только перегрузки std::make_error_condition
|
Используются перегрузки, найденные ADL |