std::atomic<T>:: operator&=,|=,^=
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
|
(C++20)
|
||||
|
(C++20)
|
||||
|
(C++20)
|
||||
| Constants | ||||
|
(C++17)
|
||||
| Specialized member functions | ||||
|
Specialized for integral,
floating-point (C++20) and pointer types |
||||
|
Specialized for integral and
pointer types only |
||||
|
(C++26)
|
||||
|
(C++26)
|
||||
| Specialized for integral types only | ||||
|
atomic::operator&=
atomic::operator|=
atomic::operator^=
|
|
Nur Mitglied von
atomic<
Integral
>
Spezialisierungen
|
||
|
T operator
&
=
(
T arg
)
noexcept
;
|
(1) | (seit C++11) |
|
T operator
&
=
(
T arg
)
volatile
noexcept
;
|
(2) | (seit C++11) |
|
T operator
|
=
(
T arg
)
noexcept
;
|
(3) | (seit C++11) |
|
T operator
|
=
(
T arg
)
volatile
noexcept
;
|
(4) | (seit C++11) |
|
T operator
^
=
(
T arg
)
noexcept
;
|
(5) | (seit C++11) |
|
T operator
^
=
(
T arg
)
volatile
noexcept
;
|
(6) | (seit C++11) |
Ersetzt atomar den aktuellen Wert mit dem Ergebnis einer Berechnung unter Einbeziehung des vorherigen Wertes und arg . Der Vorgang ist ein Lese-Modifizier-Schreibe-Vorgang.
- operator & = führt atomares bitweises UND aus. Entspricht return fetch_and ( arg ) & arg ; .
- operator | = führt atomares bitweises ODER aus. Entspricht return fetch_or ( arg ) | arg ; .
- operator ^ = führt atomares bitweises exklusives ODER aus. Entspricht return fetch_xor ( arg ) ^ arg ; .
|
Es ist veraltet, wenn std:: atomic < T > :: is_always_lock_free false ist und irgendeine volatile Überladung an der Überladungsauflösung teilnimmt. |
(since C++20) |
Inhaltsverzeichnis |
Parameter
| arg | - | das Argument für die arithmetische Operation |
Rückgabewert
Der resultierende Wert (das heißt, das Ergebnis der Anwendung des entsprechenden binären Operators auf den Wert unmittelbar vor den Effekten der entsprechenden Memberfunktion in der modification order von * this ).
Hinweise
Im Gegensatz zu den meisten zusammengesetzten Zuweisungsoperatoren geben die zusammengesetzten Zuweisungsoperatoren für atomare Typen keine Referenz auf ihre linken Argumente zurück. Stattdessen geben sie eine Kopie des gespeicherten Werts zurück.
Siehe auch
|
führt atomar eine bitweise UND-Operation zwischen dem Argument und dem Wert des atomaren Objekts durch und erhält den zuvor gehaltenen Wert
(öffentliche Elementfunktion) |
|
|
führt atomar eine bitweise ODER-Operation zwischen dem Argument und dem Wert des atomaren Objekts durch und erhält den zuvor gehaltenen Wert
(öffentliche Elementfunktion) |
|
|
führt atomar eine bitweise EXKLUSIV-ODER-Operation zwischen dem Argument und dem Wert des atomaren Objekts durch und erhält den zuvor gehaltenen Wert
(öffentliche Elementfunktion) |
|
|
erhöht oder verringert den atomaren Wert um eins
(öffentliche Elementfunktion) |
|
|
addiert zum oder subtrahiert vom atomaren Wert
(öffentliche Elementfunktion) |