std::atomic_ref<T>:: operator=
From cppreference.net
<
cpp
|
atomic
|
atomic ref
C++
Concurrency support library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::atomic_ref
|
value_type operator
=
(
value_type desired
)
const
noexcept
;
|
(1) | (constexpr since C++26) |
|
atomic_ref
&
operator
=
(
const
atomic_ref
&
)
=
delete
;
|
(2) | |
1)
次と等価:
store
(
desired
)
;
return
desired
;
。このオーバーロードは、
std::
is_const_v
<
T
>
が
false
の場合にのみ、オーバーロード解決に参加する。
目次 |
パラメータ
| 期待値 | - | 代入する値 |
戻り値
上記の通り。
注記
ほとんどの代入演算子とは異なり、
atomic_ref
の代入演算子は左辺の引数への参照を返しません。代わりに格納された値のコピーを返します。
不具合報告
以下の動作変更の欠陥報告書は、以前に公開されたC++規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 正しい動作 |
|---|---|---|---|
|
LWG 3508
( P3323R1 ) |
C++20 | 代入演算子は const T に対して無意味であった |
非constの
T
のみを受け入れるように制約された
|
関連項目
atomic_ref
オブジェクトを構築する
(public member function) |
|
|
参照先オブジェクトの値を非アトミックな引数でアトミックに置き換える
(public member function) |