VS(visual studio)中创建项目中的‘预编译头’选项含义。

               对于一个VC++初学者在‘新建’项目时,可能会有这个疑问:

  ‘预编译头’是干什么的?(当然在属性页 ---> 配置属性 ---> C/C++ --->预编译头 也是可以设置的)

              为了解决这个问题,需要先了解这样两个文件。‘stdafx.h’ 和‘stdafx.cpp’文件。

      在 win32 项目‘stdafx.h’ 文件中会存放一些必需的头文件,如其中引用了 "targetver.h"头文件等 ,"targetver.h"主要定义了程序运行需要的最低Windows版本。

      在MFC项目中‘stdafx.h’ 文件中引用的头文件有:

      #include <afxwin.h>         // MFC 核心组件和标准组件.
      #include <afxext.h>         // MFC 扩展; 凡使用工具栏、状态栏的程序必须载入这个文件
      #include <afxdisp.h>        // MFC 自动化类

      #include "targetver.h"

      ..........

        而在‘stdafx.cpp’ 中只是 简单了引用了 ‘stdafx.h’文件。

  

   1)        当选中‘预编译头’ 选项时, 就相当于告诉编译器,编译过‘stdafx.h’’中的内容下次就不要再进行编译了,编译后会生成一个‘stdafx.pch’文件,

         第二次再编译时直接从磁盘中取出来。

          之所以要这样做,  因为这些都是系统的头文件,一般是不需要修改的,重复编译会浪费大量的时间。(这种观念在 Borland C/C++ 早就有了,

         MS 在vc++ 1.0 才有的)

         在新建MFC项目(vs2008)中并没有这一选项,估计是系统强制选择了‘预编译头(Precompiled Header)’。

    2)  还有一个问题就是,‘stdafx.cpp’’是作什么用的?

          我们知道‘*.h’ 文件是无法编译的。所以必须借助于‘afxstd.cpp’ 这个源文件才能得以实现,即生成‘.pch’文件。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值