std::atomic<T>::atomic
(1) | ||
atomic() noexcept = default;
|
(C++11 起) (C++20 前) |
|
constexpr atomic() noexcept(std::is_nothrow_default_constructible_v<T>);
|
(C++20 起) | |
constexpr atomic( T desired ) noexcept;
|
(2) | (C++11 起) |
atomic( const atomic& ) = delete;
|
(3) | (C++11 起) |
构造新的原子变量:
1) 默认构造函数是平凡的:不发生静态和线程局域对象的零初始化以外的初始化。
std::atomic_init 可用于完成初始化。
|
(C++20 前) |
1) 值初始化底层对象(即用 T()))。该初始化非原子。
如果 std::is_default_constructible_v<T> 是 false,那么程序非良构。
|
(C++20 起) |
2) 以 desired 初始化底层值。该初始化非原子。
3) 原子对象不可复制构造 (CopyConstructible) 。
参数
desired | - | 用以初始化的值 |
注解
默认初始化的 std::atomic<T> 不含 |
(C++20 前) |