0

在使用 win32 api 时,我注意到一些奇怪的事情。我正在处理一个小项目,我尝试在包含 windows.h 的位置之后添加一个定义 WIN32_LEAN_AND_MEAN。在 VS 2013 RC 的构建日志中使用构建时间跟踪器,在启用定义 WIN32_LEAN_AND_MEAN 的情况下,构建时间实际上需要更长的时间(10 毫秒左右)。我在正确的地方定义了 WIN32_LEAN_AND_MEAN 吗?运行预处理器定义的时间是否比仅查看它们的时间短?如果是这样,您应该在多大的项目中定义 WIN32_LEAN_AND_MEAN?谢谢您的帮助!

更新:按照建议,我将定义 WIN32_LEAN_AND_MEAN 更改为在包含 windows.h 之前,它给了我更大的性能影响。它花费了我 260 毫秒的构建时间。

4

2 回答 2

3

首先,在启动程序(编译器和链接器)并执行大量 I/O(读取文件)的进程中,10ms 的构建时间增加并不显着。

接下来,您需要先WIN32_LEAN_AND_MEAN 定义#include <Windows.h>. 您甚至可能希望在项目设置中定义它,以确保所有文件都获得相同的Windows.h.

于 2013-09-25T00:53:20.110 回答
1

它需要在您包含windows.h.

此常量从windows.h. 如果你在之后定义它,#include那么它将没有效果。

于 2013-09-25T00:53:16.240 回答