预编译头报错

预编译头的概念:
预编译头文件通常以.pch为扩展名,是将工程中比较稳定的代码预先编译好放在这个文件中
生成预编译头文件很耗时间,要尽量避免修改这些稳定的代码,如果这些代码被修改,则需要重新编译
生成预编译头文件。
作用:
预编译头文件可以用来提高速度,将不经常改变的代码预编译好,以免每次都和其他文件一起编译。
使用方法:
使用预编译头文件需要首先指定一个头文件,这个头文件包含不经常被改变的代码和其他的一些头文件
系统默认的是stdafx.h
产生预编译头文件和使用预编译头文件:
1、工程->设置,选择C/C++选项卡,分类选择“预编译头文件”,选择创建预补偿页眉文件,或者
修改命令参数为Yc”stdafx.h”.
2、单独编译stdafx.cpp文件,使用(Ctrl+F7)
3、在进入工程设置中选择使用预补偿页眉文件,标题设为stdafx.h, 不加引号
4、重新编译工程即可

我的自问自答:
1.为什么预编译头文件都还要对应一个cpp文件呀,我们需要的是头文件呀?
  因为单单一个头文件无法编译,所以一般来说预编译头文件都一对应的cpp文件(这个文件里一般只有一个include ),这个文件一般来说第一个被编译,这样就生成了.pch这个经过预编译头。

2.预编译头文件为什么能提高编译速度?
  对于单一的编译单元来说,使用预编译头,可以将原来不使用预编译头时的宏展开,include文件包含(IO读取的时间)等时间省去,故缩短了编译时间,提高了编译速度。


在Visual Stdio中使用预编译头,可能会产生error C1854。
解决方法如下:
1、将stdfax.cpp属性中预编译头改为创建。
2、将工程中其余cpp属性预编译头均改为使用。
3、将工程属性预编译头改为使用。
4、如果还存在该error,重新生成解决方案。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值