是否保证sizeof(std :: atomic <integer type>)== sizeof(整数类型)?

Mar*_*ark 12 c++ atomic c++11

换句话说,std::atomic<int>保证只保留一个int值?

And*_*owl 18

没有.

根据C++ 11标准的第29.5/9段:

[注意:原子特化的表示不需要与其对应的参数类型具有相同的大小.专业化应尽可能具有相同的大小,因为这减少了移植现有代码所需的工作量. - 尾注]