C++ 命名需求: StandardLayoutType (自 C++11 起)
来自 cppreference.com
指定类型是标准布局类型。标准布局类型对于与其他编程语言编写的代码进行通信很有用。
注意:标准没有定义具有此名称的命名需求。这是一种由核心语言定义的类型类别。它仅出于一致性原因在此处作为命名需求包含。
内容 |
[编辑] 需求
以下类型统称为标准布局类型
[编辑] 属性
参见 标准布局.
[编辑] 缺陷报告
以下更改行为的缺陷报告已追溯应用于先前发布的 C++ 标准。
DR | 应用于 | 已发布的行为 | 正确行为 |
---|---|---|---|
CWG 1672 | C++11 | 第一个非静态数据成员规则被忽略 空基类的存在 |
第一个非静态数据成员规则 变为递归 |
CWG 1813 | C++11 | 在间接基类中定义了成员的类 技术上不是标准布局 |
所有成员声明必须在 同一个类中 |
CWG 2120 | C++11 | 当数组作为第一个成员时,未考虑 将第一个元素类型与基类的类型进行比较 |
数组成员被考虑 |
[编辑] 另请参阅
(C++11) |
检查类型是否是 标准布局 类型 (类模板) |