Spec-Zone.ru › C++

std::atomic_ref<T>::fetch_xor

Предоставляется только, если T является целочисленным типом, отличным от cv bool
value_type fetch_xor( value_type arg,
                      std::memory_order order =
                          std::memory_order_seq_cst ) const noexcept;
(начиная с C++20)

Атомарно заменяет текущее значение объекта, на который имеется ссылка, результатом побитового исключающего ИЛИ значения и arg. Эта операция является операцией чтения-модификации-записи. Влияние на память определяется значением order.

Эта перегрузка участвует в разрешении перегрузки только в том случае, если std::is_const_v<T> равно false.

Параметры

arg - другой операнд побитового исключающего ИЛИ
order - ограничения на порядок операций с памятью

Возвращаемое значение

Значение объекта, на который имеется ссылка, непосредственно перед воздействием этой функции.

Отчёты об ошибках

Следующие отчёты об ошибках, изменяющие поведение, были ретроактивно применены к ранее опубликованным стандартам C++.

Отчёт об ошибке Применён к Поведение согласно опубликованной версии Корректное поведение
LWG 3508
(P3323R1)
C++20 fetch_xor не имело смысла для constT ограничено приёмом только неконстантных T

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/atomic/atomic_ref/fetch_xor

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API