我使用的是 VS2008,项目属性设置为(事件)x64
奇怪的是 _WIN64 没有定义,WPARAM 和 LPARAM 仍然是 32 位的。
我应该手动定义 _WIN64 吗?
如果是这样,我应该把#define _WIN64 放在哪里?预处理器设置似乎不起作用。
我很确定它被编译为 x64,因为在任务管理器中,exe 没有 *32 后缀。
最佳答案
问题是,
_WIN64 已由编译器定义,但 IDE 无法识别它。 (似乎已在 VS2010 中修复。)
sizeof(WPARAM) 和 sizeof(LPARAM) 的值都是 8(不是 4)
IDE 以灰色显示 *ifdef _WIN64* block 中的代码,就好像它们是非事件的,但实际上不是。
关于c++ - _WIN64 未在 x64 项目中定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11928583/