std::error_condition:: operator=
From cppreference.net
<
cpp
|
error
|
error condition
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Diagnostics library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::error_condition
| Member functions | ||||
|
error_condition::operator=
|
||||
| Non-member functions | ||||
|
(until C++20)
(until C++20)
(C++20)
|
||||
| Helper classes | ||||
|
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++.
| DR | Применяется к | Поведение в опубликованной версии | Корректное поведение |
|---|---|---|---|
| LWG 3629 | C++11 |
использовались только перегрузки
std::make_error_condition
|
используются перегрузки, найденные через ADL |