使用过Visual Studio,VC++的朋友对stdafx.h这个文件一定非常熟悉。我们新建工程的时候他就自动出现了,并且在每个.cpp文件的最前面都有一个#include "stdafx.h"。这个文件一定有他的作用,然而我们也经常会因为他遇到各式各样的问题,所以这里给大家介绍一下这个文件的作用和意义。
简介:
stdafx,全称StandardApplication Framework Extensions,标准引用框架扩展。
其实就是头文件预编译,我们知道C++文件进行编译时,需要先进行预编译,包括宏定义替换,条件编译以及#include文件包含。
这里就是将一个工程中可能会经常使用的一些MFC头文件(Windows.h,afxwin.h等)预先编译,这样在以后的编译时就可以略过这部分,在预编译的基础上进行编译,从而加快编译速度。
工作原理:
stdafx.h中没有函数库,只是定义了一些环境参数,包含一些头文件,使得编译出来的程序能在32位的操作系统环境下运行。
Windows和MFC的include文件都非常大,即使有一个快速的处理程序,编译程序也要花费相当长的时间来完成工作。由于每个.CPP文件都包含相同的include文件,为每个.CPP文件都重复处理这些文件就显得很傻了。