gpt4 book ai didi

c - 要包含指令的预编译头

转载 作者:行者123 更新时间:2023-11-30 15:40:44 32 4
gpt4 key购买 nike

我有两个 header world.h worldw.h

世界.h

void h_world();

worldw.h

void g_world();

使用gcc world.hgcc worldw.h预编译后,我有world.h.gchworldw.h .gch。此外,我将此预编译 header 添加到 main.c 中:

#include "world.h.gch"
#include "worldw.h.gch"
....

但是当我编译这个时,我有超过一千个错误。我预计这是可以的,因为预编译头只是减少了编译时间。

最佳答案

而不是

#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

关于c - 要包含指令的预编译头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20875572/

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