std::atomic_ref<T>::operator=
From cppreference.com
< cpp | atomic | atomic ref
value_type operator=( value_type desired )constnoexcept; | (1) | (constexpr since C++26) |
atomic_ref& operator=(const atomic_ref&)= delete; | (2) | |
1) Equivalent to store(desired);return desired;. This overload participates in overload resolution only if std::is_const_v<T> is false.
Contents |
[edit]Parameters
desired | - | value to assign |
[edit]Return value
As described above.
[edit]Notes
Unlike most assignment operators, the assignment operator for atomic_ref
does not return a reference to its left-hand argument. It returns a copy of the stored value instead.
[edit]Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 3508 (P3323R1) | C++20 | assignment operator was meaningless for const T | constrained to accept only non-const T |
[edit]See also
constructs an atomic_ref object (public member function) | |
atomically replaces the value of the referenced object with a non-atomic argument (public member function) |