VS中C++程序系统都要加个"stdafx"头文件,这个干什么用的

VS中C++程序系统都要加个"stdafx"头文件,这个干什么用的,第1张

stdafx.h : 标准系统包含文件的包含文件

VC创建项目时自动创建的预编译头文件,在编译其他文件之前,VC先预编译此文件。头文件stdafx.h引入了项目中需要的一些通用的头文件,比如window.h等,在自己的头文件中包括stdafx.h就包含了那些通用的头文件。

所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。

预编译头文件通过编译stdafx.cpp生成,以工程名命名,由于预编译的头文件的后缀是“pch”,所以编译结果文件是projectname.pch。

编译器通过一个头文件stdafx.h来使用预编译头文件。stdafx.h这个头文件名是可以在project的编译设置里指定的。编译器认为,所有在指令#include "stdafx.h"前的代码都是预编译的,它跳过#include "stdafx. h"指令,使用projectname.pch编译这条指令之后的所有代码。

因此,所有的CPP实现文件第一条语句都是:#include "stdafx.h"。

在建立工程的时候,当建立的是空项目的时候就没有这个头文件,而如果不建立空项目,直接按着建立工程的步骤就会自动生成这个头文件stdafx.h。

然后那个源文件的话,就直接将所要写的程序在main函数中添加就可以了,一般也可以不用这个自动生成的,可以全部删了,然后自己编写程序。

你应该是开启了预编译头功能。这个是VS系列编译器提供的一项新功能,可以将一些常用的头文件,加入到这个预编译头文件中

这样,你的其他文件,只需要添加stdafx.h即可

程序在编译之前,会将stdafx.h中的内容,替换到源代码中,提高编译效率

如果你不想开启该功能,可以通过如下步骤停止该内容:

我的是VS2008.你可以在相应版本中,找类似的 *** 作

在菜单栏,点击“项目”

选择最下方的“XXX属性”(XXX为你现在正在使用的功能名)

选择左侧,配置属性

选择C/C++

选择预编译头

在右侧,选择“不使用预编译头”

截图如下


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/bake/11925371.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存