我找到了定义WIN32_LEAN_AND_MEAN“通过排除一些不常用的API来减小Win32头文件的大小”。在其他地方,我读到它加快了构建过程。
那么什么是WIN32_LEAN_AND_MEAN完全排除?我应该关心这个预处理器指令吗?它是否加快了构建过程?
我还在项目中看到了一个预处理器指令,名为extra lean。这是另一个我应该知道的深奥的预处理器咒语吗?
发布于 2012-06-15 03:41:36
根据Windows开发人员中心WIN32_精益_和_MEAN不包括加密、DDE、RPC、Shell和Windows Sockets等API。
发布于 2021-01-22 00:22:32
补充上述答案,并从Windows开发人员中心文档,
Winsock2.h头文件在内部包括来自Windows.h头文件的核心元素,因此在Winsock应用程序中,Windows.h头文件通常没有#include行。如果Windows.h头文件需要#include行,则应在该行前面加上#define WIN32_精益_和_中庸之宏。由于历史原因,Windows.h标头默认包含Windows Sockets 1.1的Winsock.h标头文件。Winsock.h头文件中的声明将与Windows Sockets 2.0所需的Winsock2.h头文件中的声明冲突。WIN32_精益_和_MEAN宏阻止Winsock.h包含在Windows.h标头中。
https://stackoverflow.com/questions/11040133
复制相似问题