【发布时间】:2026-02-21 04:50:01
【问题描述】:
引用iOSDocumentation on Wrapper Headers:
#include_next不区分和 "file" 包含,也不检查您指定的文件是否具有相同的 名称为当前文件。它只是查找名为的文件,开始 搜索路径中的目录位于当前目录之后 文件已找到。 使用 `#include_next' 会导致很大的混乱。我们推荐 只有在没有其他选择时才使用它。特别是,它 不应在属于特定程序的标头中使用;它 应该只用于沿线进行全局更正 修复包括。
那么,两个问题,#include_next 是什么,你为什么需要使用它?
【问题讨论】:
-
ffmpeg 库中的一个例子:
#ifndef FFMPEG_COMPAT_AIX_MATH_H #define FFMPEG_COMPAT_AIX_MATH_H #define class class_in_math_h_causes_problems #include_next <math.h> #undef class #endif /* FFMPEG_COMPAT_AIX_MATH_H */
标签: gcc include c-preprocessor