我有一个处理输入文件的 C++ 程序。我想为我的程序添加预处理能力。也就是说,输入文件看起来像:
%pre-processing section
#include <some_parent_file>
#define x y
#ifdef 0
some useless text
#endif
%actual file-contents
... lots of text ...
然后我的程序应该自动包含父文件中的文本,执行#define 内容和其他预处理。我可以在调用我的程序之前使用脚本(使用 g++ -E),但我希望能够在我的程序中执行此操作,因为这样可以提供更大的灵活性。
当“实际文件内容”部分中的行以散列开头时,“g++ -E”将假定一个预处理器指令(g++ -E 不知道我想将我的代码分成 2 个部分!)。
此外,如果我可以在“实际文件内容”部分中仅使用 ifdef 功能,那就太棒了。
我可以在我的程序中嵌入 C++ 代码以仅使用 gcc 编译器的预处理功能中我想要的功能吗?