预编译头文件:stdafx.cpp,stdafx.h

原创 2006年06月21日 09:29:00

摘自《VC++ 编程指南》

预编译头文件:stdafx.cpp,stdafx.h

这两个文件用于建立一个预编译的头文件xxxproject.pch和一个预定义的类型文件stdafx.obj。由于MFC体系结构非常大,包含许多头文件,如果每次都编译的话比较费时。因此,我们把常用的MFC头文件都放在stdafx.h中,如afxwin.h、afxext.h、afxdisp.h、afxcmn.h(在控制台程序中则自动包含<iostream>...)等,然后让stdafx.cpp包含这个stdafx.h文件。这样,由于编译器可以识别哪些文件已经编译过,所以stdafx.cpp就只编译一次,并生成所谓的预编译头文件(因为它存放的是头文件编译后的信息,故名)。如果读者以后在编程时不想让有些MFC头文件每次都被编译,也可以将它加入到stdafx.h中。采用预编译头文件可以加速编译过程。

如果不想用stdafx.h文件(想自己手工添加<iostream>...这样的文件),则可以将其去掉,去掉的方法(实际上是一个编译开关):

在VC6.0中。有一个编译选项/Yu"stdafx.h"
去掉这个就可以不包含了

VC2005中
选择"项目"project settings --> c/c++ -->预编译头-->创建/使用预编译头(选择"不使用预编译头")

如果这个开关处于"使用预编译头"的状态,则每个.cpp文件必须有#include "stdafx.h"指令

预编译头文件(stdafx.h)的原理

原文地址:http://521-lion.blog.163.com/blog/static/6662942920117236949606/     stdafx名称的英文全称为:Standard A...

关于#include "stdafx.h"以及预编译头文件的问题

提示:Cannot open include file: 'stdafx.h ': No such file or directory #include       "stdAfx.h...
  • robberM
  • robberM
  • 2013年03月16日 09:07
  • 7864

预编译头文件(stdafx.h)的原理

预编译头文件(stdafx.h)的原理

预编译头文件(stdafx.h)的原理及其工程应用

stdafx名称的英文全称为:Standard Application Framework Extensions   所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文...

关于#include "stdafx.h"以及预编译头文件的问题

提示:Cannot open include file: 'stdafx.h ': No such file or directory  #include       "stdAfx.h...
  • zyazky
  • zyazky
  • 2016年09月22日 10:55
  • 757

stdafx.h与预编译头文件

关于#include "stdafx.h" 关于VC编译器,它总有奇奇怪怪的编译选项。让我们这些搞C/C++的菜鸟经常不知所云。 今天就来简单总结一下stdafx.h吧 我编译工程的时候,出...
  • muzhiai
  • muzhiai
  • 2013年04月01日 15:01
  • 680

stdafx.h与预编译头文件

关于#include "stdafx.h" 关于VC编译器,它总有奇奇怪怪的编译选项。让我们这些搞C/C++的菜鸟经常不知所云。 今天就来简单总结一下stdafx.h吧 我编译工程的时候,出现...
  • TXH0001
  • TXH0001
  • 2011年12月01日 15:10
  • 4671

没有找到预编译指示信息的头文件"stdafx.h"

fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h 2011-09-23 11:14 98人阅读 评论(1)...

fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h"

错误描述:fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h"”? 错误分析:     此错误发生的原...

vs2010:fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "StdAfx.h"”?

用 vs2010 编程,因为它自动生成的StdAfx.h 和 StdAfx.cpp没什么用, 所以索性就把它们删了 但是F5运行报错:fatal error C1010: 在查找预编译头时遇到意外的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:预编译头文件:stdafx.cpp,stdafx.h
举报原因:
原因补充:

(最多只允许输入30个字)