在 C++ 中,我可以简单地将指针转换为 DWORD 吗?
MyClass * thing;
DWORD myPtr = (DWORD)thing;
那行得通吗?
最佳答案
毫无疑问,您可以做到。
它是否有效取决于环境和您希望它做什么。
在 32 位 Windows1 上(最常看到 DWORD
的地方)通常没问题。在 64 位 Windows 上(您还可以看到 DWORD
,但没有那么多)通常不会。
- 或者,更准确地说,当编译为 32 位可执行文件时,它将作为 32 位进程运行,而不管您碰巧在哪个 Windows 拷贝上运行它。
关于C++ 指针作为 DWORD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20914601/