zhi*_*rzh 5 c c++ gcc header-files precompiled-headers
我最近发现了有关预编译头文件C++
,特别是gcc
编译器.我确实.h.gch
在网上找到了一些关于文件的东西,但还没有能够使用它们.
我需要知道:
.h.gch
文件?我的代码没有创建一个?#include "SomeCode.h.gch"
或者还有其他一些使用它的方法吗?请帮忙
使用 GCH(Gnu 预编译头文件)很简单,至少在理论上是这样。
只需使用gcc <compiler-options> myfile.h
. 那将创建myfile.h.gch
. 您可以使用 来-o <name>
指定输出文件的名称。
如果你的头文件是 C++,你必须将其命名为myfile.hpp
或myfile.hh
,否则 GCC 会尝试将其编译为 C,并且可能会失败。或者,您可以使用-x c++-header
编译器选项。
把你的myfile.h.gch
放在同一个目录下myfile.h
。myfile.h
那么至少只要编译器选项相同,就会自动使用它来代替。
如果您不想(或不能)将您的文件放在*.gch
与您的相同的目录中*.h
,您可以将它们移动到一个目录,例如./gch
,并将该选项添加-Igch
到您的编译器命令中。
使用gcc -H <compiler-options> myfile.c
。这将列出包含的文件。如果你的myfile.h.gch
没有出现,或者有一个x
,那么就有问题了。如果它出现带有!
,那么恭喜!你正在使用它。