因此,假设我有一堆头文件,当前它们位于:
aa/bb/cc/MyHeader1.h
aa/bb/cc/MyHeader2.h
aa/bb/cc/MyHeader3.h
要使用这些头文件,我要做:
#include "aa/bb/cc/MyHeader1.h"
#include "aa/bb/cc/MyHeader2.h"
#include "aa/bb/cc/MyHeader2.h"
但是将来这些头文件可能会移动到:
xx/yy/zz/MyHeader1.h
xx/yy/zz/MyHeader2.h
xx/yy/zz/MyHeader3.h
是否可以不对“ aa / bb / cc”部分进行硬编码?我可以定义客户端代码包含的某种全局宏,以便在移动头文件时,只需要更改一个位置并完成操作即可?像这样(显然下面的代码不起作用):
#define LIB_INC "aa/bb/cc"
#include "LIB_INC/MyHeader1.h"
此外,我想避免在编译时使用-I,但是从include中删除aa / bb / cc并不是我的选择。