c++ - 如何在最前面执行一个头文件?

标签 c++ c visual-c++ compiler-construction header-files

动机:

我想开启VC++的内存检测功能,要求某些语句必须在最前面,如下:

#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>

问题:

假设我有一个头文件forefront.h,我想要的是如下效果:

a.cpp

#include <any_other_one.h>
#include <forefront.h> // An compiler error generated here!

b.cpp

#include <forefront.h> // OK
#include <any_other_one.h>

如何实现?

最佳答案

使用以下内容创建您自己的头文件:

#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>

现在使用项目设置的“高级”部分中的“强制包含”设置。此处指定的任何文件都将按照指定的顺序包含在所有其他文件之前。

关于c++ - 如何在最前面执行一个头文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18971801/

相关文章:

有人可以解释这个 C 错误消息吗?

c++ - 我如何确定哪个依赖项会导致 C++ 编译单元被重建?

c++ - 如何检查两个十进制数字的乘积是否大于ULONG_MAX?

c++ - 与枚举的隐式转换

c - 如何处理前面的逻辑

c - 从客户端向服务器发送字符串时只接收到第一个字节

c++ - wxWidgets (C++) 无法执行许多 wxDC.DrawPoint() 操作

c++ - 如何在 mfc sdi 主窗口中添加编辑框和按钮?

c++ - 如何查看 map 中是否存在键?

c++ - Python C API 和 C++ 函数