相关疑难解决方法(0)

何时使用reinterpret_cast?

我对reinterpret_castvs 的适用性感到困惑static_cast.从我读到的一般规则是使用静态转换,当类型可以在编译时解释,因此这个词static.这是C++编译器内部用于隐式转换的转换.

reinterpret_casts适用于两种情况,将整数类型转换为指针类型,反之亦然,或将一种指针类型转换为另一种指针类型.我得到的一般想法是不可移植的,应该避免.

我有点困惑的地方是我需要的一种用法,我从C调用C++并且C代码需要保持C++对象,所以基本上它拥有一个void*.什么演员应该用于在void *类型和类型之间进行转换?

我看过两者的用法static_castreinterpret_cast?虽然从我读过的内容看起来似乎static更好,因为演员阵容可以在编译时发生?虽然它说用于reinterpret_cast从一种指针类型转换为另一种指针类型?

c++ casting

432
推荐指数
6
解决办法
31万
查看次数

64位应用程序上的Windows HANDLE的范围是多少?

在WinAPI上,HANDLE类型定义为a void*,因此在64位应用程序上,HANDLE值的范围可以018446744073709551615.但这在实践中是真的吗?有没有文件说明这样的整体范围HANDLE

例如,如果有人希望将其存储HANDLEint32_t完全正常的32位应用程序,但在64位应用程序上则存在疑虑.

windows 64-bit winapi handle

23
推荐指数
1
解决办法
7072
查看次数

标签 统计

64-bit ×1

c++ ×1

casting ×1

handle ×1

winapi ×1

windows ×1