默认情况下如何包含某些头文件,这样我就不必在每个程序中输入它们

时间:2012-08-20 06:22:20

标签: c++ c

默认情况下如何包含某些头文件,这样我就不必在每个程序中输入它们: 在dev c ++和code :: blocks

5 个答案:

答案 0 :(得分:2)

创建一个全局头文件,该文件又包含每个项目中需要的任何文件,然后您只需要包含该单个文件。

但是我建议不要这样做,除非你所有不同的项目非常相似。不同的项目有不同的需求,也需要不同的头文件。

答案 1 :(得分:1)

可能在你的项目文件中发出一个编译器指令,或者让脚本做“每个项目”包括,但总的来说我会避免这样做。

源代码应该尽可能清楚地通过其内容对任何读者。每当我拥有显着改变其语义的源代码时,例如。通过我不知道的标题,这可能会令人困惑。

最重要的是,如果你为那些不需要它们的某些编译单元“注入”那些标题,那将对编译时间产生负面影响。

作为替换,如何引入包含那些特定头文件的common.h/hpp标头?然后,您可以在需要它们的所有文件中包含公共标头一次更改所有依赖文件的此常用标头集。它还打开了使用precompiled header files的大门,这可能值得一看。

答案 2 :(得分:1)

来自GCC文档(AFAIK GCC是您引用的开发环境使用的默认编译器)

  

-include file

     

处理文件,好像#include“file”出现在主要源文件的第一行。但是,搜索了第一个目录   file是预处理器的工作目录而不是目录   包含主要源文件。如果在那里找不到,则搜索它   因为#include“...”搜索链的其余部分正常。

     

如果给出了多个-include选项,则文件将按照它们在命令行中出现的顺序包含在内。

     

-imacros文件

     

与-include完全相同,只是扫描文件产生的任何输出都被丢弃了。它定义的宏仍然是定义的。这可以让你   从头部获取所有宏而不处理它   声明。

     

-imacros指定的所有文件都在-include指定的所有文件之前处理。

但使用这些通常是个坏主意。

答案 3 :(得分:0)

Dev c ++适用于MingW编译器,它是Windows的gcc编译器。 Gcc支持预编译头文件,因此您可以尝试。预编译头是您希望编译并添加到项目中每个目标文件的头文件。尝试在Google中搜索相关信息。

Code :: blocks也支持它们,当与gcc一起使用时,甚至更好,所以它甚至可能更容易。

答案 4 :(得分:0)

如果您选择的编辑器支持宏,请创建一个添加首选包含文件的宏。一旦完成,你所要做的就是调用你的宏来节省你自己重复的打字,你就是金色的。

希望这有帮助。