std::atomic_ref<T>::fetch_or
來自 cppreference.com
< cpp | 原子操作 (atomic) | atomic_ref
僅當 T 是除 cv bool 之外的整數型別時提供 |
||
value_type fetch_or( value_type arg, std::memory_order order = |
(C++20 起) | |
原子地用當前值與 arg 按位或的結果替換所引用物件的值。此操作是讀-修改-寫操作。記憶體受 order 值的影響。
當且僅當 std::is_const_v<T> 為 false 時,此過載才參與過載決議。
[編輯] 引數
arg | - | 按位或的另一個引數 |
順序 | - | 要強制執行的記憶體順序約束 |
[編輯] 返回值
所引用物件的值,緊接在此函式生效之前。
[編輯] 缺陷報告
下列更改行為的缺陷報告追溯地應用於以前出版的 C++ 標準。
缺陷報告 | 應用於 | 釋出時的行為 | 正確的行為 |
---|---|---|---|
LWG 3508 (P3323R1) |
C++20 | fetch_or 對於 const T 是無意義的 |
限制為只接受非 const T |