易变数据成员是否可以轻易复制?

Lig*_*ica 9 c++ volatile language-lawyer c++11

在写这个答案的同时,我意识到我对我的结论并不像通常在击球前所确定的那样自信Post Your Answer.

我可以找到几个相当有说服力的引用,因为volatile数据成员的琐事可复制性要么是实现定义的,要么是不允许的:

但我无法在标准1中支持这一点.特别令人"担忧的是,在实际标准的最终措辞中,没有任何迹象表明拟议的措辞从n3159问题清单中发生变化.

那么,是什么给出的?volatile数据成员是否可以轻易复制?


1   C++ 11

cHa*_*Hao 2

我看到以下“可简单复制”的定义(C++11 \xc2\xa73.9,第 9 段):

\n\n
\n

...标量类型、普通可复制类类型、此类类型的数组以及 这些类型的cv 限定版本统称为普通可复制类型...

\n
\n\n

根据定义,cv 限定包括const 和/或 volatile(\xc2\xa73.9.3)。因此,volatile如果非限定类型是普通可复制的(标量或普通可复制类类型或其数组),则值似乎是显式普通可复制的。

\n