C++ 具名要求: TriviallyCopyable

来自cppreference.com
< cpp‎ | named req
 
 
 

要求

  • 每个复制构造函数均为平凡或弃置的
  • 每个移动构造函数均为平凡或弃置的
  • 每个复制赋值运算符均为平凡或弃置的
  • 每个移动赋值运算符均为平凡或弃置的
  • 至少一个复制构造函数、移动构造函数、复制赋值运算符或移动赋值运算符未弃置
  • 平凡而未弃置的析构函数

这意味着该类没有虚函数虚基类

标量类型和可平凡复制 (TriviallyCopyable) 对象的数组也是可平凡复制 (TriviallyCopyable) 的。

缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

DR 应用于 出版时的行为 正确行为
CWG 1734 C++11 拥有弃置的非平凡赋值的 C++03 POD 不是平凡的 允许弃置的构造函数/运算符
CWG 2094 C++14 volatile 标量类型非可平凡复制( GWG 496 ) 使之为可平凡复制

参阅

检查类型是否可平凡复制
(类模板)