我有两个标题world.h
worldw.h
。
void h_world();
void g_world();
使用gcc world.h
和gcc worldw.h
进行预编译后,我有world.h.gch
和worldw.h.gch
。我将这个预编译的标题添加到main.c
:
#include "world.h.gch"
#include "worldw.h.gch"
....
但是当我编译它时,我有超过一千个错误。我预计它没关系,因为预编译头只是减少编译时间。
答案 0 :(得分:1)
而不是
#include "world.h.gch"
#include "worldw.h.gch"
你需要
#include "allworld.h"
在allworld.h中放
#include "world.h"
#include "worldw.h"
然后预编译allworld.h ...如果存在.h.gch文件,编译器将使用它;如果没有,它将使用.h文件。您可以使用-H标志编译源代码来查看正在使用的内容。
使用预编译头有许多限制;见http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html