预编译头文件的问题(GCC)

最近写代码,遇见了一个问题,就是在.h文件中定义了一个宏函数,在相关的.c文件中调用,结果编译出现链接出错,找了好久,终于找出了问题所在,在这里记录一下。

首先、说说预编译的好处:就是提高编译速度

其次、预编译头文件可以用在一下场合:

1、提供某种固定功能和不变的类型定义

2、减少编译的时间

接着、说说預编译可能带来的问题:

在预编译中(gcc)会将.h编译成.gch文件,按理说只要.h文件改动就应该重新编译.gch文件,

但如果没有将.h文件设置为.gch的依赖性的话,那么就会因为不会同步更新而导致编译问题(我就在这里出错)。

最后、说说解决方法:

删除与改动的.h相关文件的.gch文件

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwfggp.html