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