最近写代码,遇见了一个问题,就是在.h文件中定义了一个宏函数,在相关的.c文件中调用,结果编译出现链接出错,找了好久,终于找出了问题所在,在这里记录一下。
首先、说说预编译的好处:就是提高编译速度
其次、预编译头文件可以用在一下场合:
1、提供某种固定功能和不变的类型定义
2、减少编译的时间
接着、说说預编译可能带来的问题:
在预编译中(gcc)会将.h编译成.gch文件,按理说只要.h文件改动就应该重新编译.gch文件,
但如果没有将.h文件设置为.gch的依赖性的话,那么就会因为不会同步更新而导致编译问题(我就在这里出错)。
最后、说说解决方法:
删除与改动的.h相关文件的.gch文件