ATOMIC_FLAG_INIT
定义于头文件 <atomic>
|
||
#define ATOMIC_FLAG_INIT /* implementation-defined */ |
(C++11 起) (C++20 中弃用) |
|
定义能以语句 std::atomic_flag v = ATOMIC_FLAG_INIT; 用于初始化 std::atomic_flag 以清除(置 false )状态的表达式。能否用于其他初始化语境中是未指定的。
这是初始化 std::atomic_flag 为确定值的唯一方式:任何其他初始化后它保有的值是未指定的。 |
(C++20 前) |
此宏不再有必要且被弃用,因为 std::atomic_flag 的默认构造函数初始化它为清除状态。 |
(C++20 起) |
示例
运行此代码
#include <atomic> std::atomic_flag static_flag = ATOMIC_FLAG_INIT; // 静态初始化, // 保证在静态对象的动态初始化期间可用。 int main() { std::atomic_flag automatic_flag = ATOMIC_FLAG_INIT; // 保证能工作 // std::atomic_flag another_flag(ATOMIC_FLAG_INIT); // 未指定 }
参阅
(C++11) |
免锁的布尔原子类型 (类) |