【发布时间】:2016-08-09 20:04:15
【问题描述】:
我在使用 MFC 在 Visual Studio 2015 上编译 Visual C++ 代码时收到此错误“错误 C2371 'DWORD':重新定义;不同的基本类型”。 当我双击错误时,它会将我带到 stdint.h 第 23 行:
typedef unsigned int uint32_t;
如果我在我的代码中找到任何 DWORD 并按 f12,它会将我带到 minwindef.h 第 156 行:
typedef unsigned long DWORD;
我没有明确包含任何这些文件,因此我不知道这些文件的包含顺序。 我在这里很迷茫,不知道如何解决这个错误。有人有线索吗? 如果您需要更多信息,请询问我。
【问题讨论】:
-
A) 您是否为
DWORD制作了自己的typedef? B)仅仅因为您没有明确包含它并不意味着您确实包含的标题之一也没有。 -
你包含了哪些标题?
-
@NathanOliver a)我自己没有定义 DWORD b)我知道,这就是问题所在,我无法将代码追踪到包含这些标头的位置。
-
@ArnavBorborah 我包含了数百个标题,我无法在此处列出所有标题。
-
在 GCC 中
-H将显示包含树。必须有一些 MSVC 等价物。谷歌搜索............我们开始了! stackoverflow.com/questions/42308/…
标签: c++ visual-c++ visual-studio-2015 mfc