我正在写一个类,假设答案是枚举类型布局与其底层类型兼容吗?是“是”,是布局兼容的,struct kevent
但使用enum class
es 来表示filter
,flags
等,以及相关字段的适当基础类型。它也是标准布局(字段都是private
标准布局,没有virtual
成员,没有基类)。从我对 的阅读中n3690
,我可以确定我的班级和struct kevent
具有相同的价值表示,但我看不到标准中的任何内容,因此我可以reinterpret_cast
尽管这似乎是对“价值表示”的合理解释。这在技术上是标准允许的吗?如果不是,那么知道类型的值表示会给您带来什么?
编辑 2014/02/24 东部标准时间 16:45:作为对评论的回应,我应该澄清我希望reinterpret_cast
第一类引用第二类,因为当然你不能直接reinterpret_cast
将非指针类型指向另一个非- 指针类型。