gpt4 book ai didi

c++ - 通过 perl 脚本过滤 C++?

转载 作者:太空狗 更新时间:2023-10-29 19:42:50 25 4
gpt4 key购买 nike

我有一个 perl 脚本,我想在 gcc 正常处理它们之前过滤我的 cpp/h 文件——基本上作为一个额外的预处理步骤。是否有捷径可寻?我意识到我可以将 cpp 文件提供给脚本并让 gcc 从 stdin 读取输出,但这对头文件没有帮助。

最佳答案

处理此类过程的经典方法是将源代码(输入到 Perl 过滤器)视为一种新语言,具有新的文件后缀。然后您告诉 make 从这个新文件类型编译 C++ 源文件的方法是使用 Perl 脚本。

例如:

  • 新后缀:.ccp
  • 新规则(假设为 .cc 后缀):

    .ccp.cc:
    ${FILTERSCRIPT} $<
  • 将新后缀添加到后缀列表 - 优先于普通 C++ 规则。

最后一点是最棘手的。如果你只是把.ccp后缀添加到列表中,那么当.cc 文件存在。您要么必须删除中间 .cc 文件,要么确保 .ccp 出现在后缀列表中的 .cc 之前。 (注意:如果您编写了一个没有“.ccp.cc”规则的“.ccp.o”规则并且不确保“. cc' 中间被清理,然后在编译失败后重建可能意味着 make 只编译 '.cc' 文件,这可能令人沮丧并且令人困惑。)

如果更改后缀不是一个选项,则编写一个执行过滤并直接调用 C++ 编译器的编译脚本。

关于c++ - 通过 perl 脚本过滤 C++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1183063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com