Ale*_*der 6 c++ language-lawyer c++14
C++ 14中的[class.copy]/12:
如果不是用户提供的,则类X的复制/移动构造函数是微不足道的,其参数类型列表等效于隐式声明的参数类型列表,如果
否则复制/移动构造函数是非平凡的.
我可以看到上面的句子在N4606中被删除了,但我在C++标准核心语言活动问题修订版96中找不到任何东西来证明它从C++中删除14.
这是CWG 2171的结果.删除的文本仅在一种情况下更改含义:
struct X {
X(X& ) = default; // not user-provided
// parameter-type-list differs from implicit declaration's X const&
// wasn't trivial before, is trivial now
};
Run Code Online (Sandbox Code Playgroud)
但是这个复制构造函数是否微不足道是一个单独的问题,它是否实际上是可以调用的,因此原始文本被认为与标准的通常意图不一致,因此被删除.