【发布时间】:2016-12-22 22:29:42
【问题描述】:
我一直在仔细阅读类型别名的规则:http://en.cppreference.com/w/cpp/language/reinterpret_cast#Type_aliasing 我特别对最后一条规则有疑问,我们可以将其转换为:
char或unsigned char:这允许将任何对象的对象表示检查为unsigned char的数组
我注意到这不包含void 类型。难道我们不能将任何东西投射到void 并返回吗?
【问题讨论】:
-
您可以投射到
void*并返回。 -
不禁止将指针转换为不相关的类型。取消引用结果并使用值是。
-
如果我的回答听起来居高临下,我深表歉意。显然你对 c++ 的了解比我多,但我想确保任何阅读它的人都能理解答案,所以我把事情简化了一点。
-
混叠与您投射的内容无关。这是关于“检查对象表示”。也就是说,取消引用指针。
标签: c++ casting void-pointers reinterpret-cast type-alias