[atomics.types.memop] (original) (raw)

32 Concurrency support library [thread]

32.5 Atomic operations [atomics]

32.5.8 Class template atomic [atomics.types.generic]

32.5.8.6 Member operators common to integers and pointers to objects [atomics.types.memop]

value_type operator++(int) volatile noexcept;constexpr value_type operator++(int) noexcept;

Constraints: For the volatile overload of this function,is_always_lock_free is true.

Effects: Equivalent to: return fetch_add(1);

value_type operator--(int) volatile noexcept;constexpr value_type operator--(int) noexcept;

Constraints: For the volatile overload of this function,is_always_lock_free is true.

Effects: Equivalent to: return fetch_sub(1);

value_type operator++() volatile noexcept;constexpr value_type operator++() noexcept;

Constraints: For the volatile overload of this function,is_always_lock_free is true.

Effects: Equivalent to: return fetch_add(1) + 1;

value_type operator--() volatile noexcept;constexpr value_type operator--() noexcept;

Constraints: For the volatile overload of this function,is_always_lock_free is true.

Effects: Equivalent to: return fetch_sub(1) - 1;