C++11 [atomics.types.generic]p7:
atomic
如表 145 中指定的,应有与 的整数特化相对应的命名类型,以及atomic_bool
与指定的 相对应的命名类型atomic<bool>
。每个命名类型要么是对应特化的 typedef,要么是对应特化的基类。如果它是一个基类,它应该支持与相应的特化相同的成员函数。
(重点补充)
std::atomic_char
对于所有其他类型,让not be 相同的理由是什么std::atomic<char>
,依此类推?这能带来什么灵活性,为什么有用?乍一看,我不明白为什么不需要std::atomic<T>
直接将这些类型定义为专业化。
请注意,提议的N2427<atomic>
表示 typedef 完全针对专业化,而不可能针对基类。