gpt4 book ai didi

c++ - 在 VS2008 上构建 64 位 Windows 会出现 C2632 错误

转载 作者:行者123 更新时间:2023-11-28 03:56:58 27 4
gpt4 key购买 nike

所以我正在尝试在 64 位中构建一个 32 位应用程序。我正在链接到所有 64 位库,并且我已经重新编译了我们用于 64 位的所有内容。

我现在遇到奇怪的错误。我在网上看到了一些类似的错误,但在这些主题中没有任何用处。

知道是什么问题导致了这种行为吗?

警告 C4091:“typedef”:在未声明变量时忽略“float”左侧C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\windef.herror C2632: 'float' 后跟 'double' 是非法的
C:\Program Files\MicrosoftSDKs\Windows\v6.0A\include\windef.h

警告 C4091:“typedef”:当未声明变量时在“double”左侧忽略 C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\wtypes.h错误 44 error C2632: 'double' 后跟 'double' 是非法的
C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\wtypes.h

警告和错误针对同一行。显然这不是 wtypes.h 和 windef.h 的问题(如果是我也无能为力)

typedef float               FLOAT;

typedef double DOUBLE;

很明显,这些本身就很好,所以它必须是别的东西。我的项目中导致此问题的文件仅包括

有什么想法吗?

最佳答案

看起来 FLOATDOUBLE 之前已被#defined 转换为 double。这可能是另一个库的结果,尽管它似乎不太可能是由切换到 64 位编译引起的。尝试做

#undef FLOAT
#undef DOUBLE

在包含 windows.hwindef.h 或任何直接导致警告的文件之前。

关于c++ - 在 VS2008 上构建 64 位 Windows 会出现 C2632 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3142701/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com