首页 MFC编译运行错误之无法打开预编译头文件

MFC编译运行错误之无法打开预编译头文件

举报
开通vip

MFC编译运行错误之无法打开预编译头文件MFC编译运行错误之无法打开预编译头文件 MFC编译运行错误之无法打开预编译头文件 1。用VC.NET编辑程序,按Ctrl+F7,出现下列错误: fatal error C1083: 无法打开预编译头文件:“Debug/UGFace.pch”: No such file or directory 解决方法:修改:项目->属性->C/C++ ->预编译头->不使用预编译头 即可。 2。学用Visual C++ 6.0的第一个例程就让我出了错.用向导生成第一个基于对话框的Project之后,当我按照书上的源程序一...

MFC编译运行错误之无法打开预编译头文件
MFC编译运行错误之无法打开预编译头文件 MFC编译运行错误之无法打开预编译头文件 1。用VC.NET编辑程序,按Ctrl+F7,出现下列错误: fatal error C1083: 无法打开预编译头文件:“Debug/UGFace.pch”: No such file or directory 解决方法:修改:项目->属性->C/C++ ->预编译头->不使用预编译头 即可。 2。学用Visual C++ 6.0的第一个例程就让我出了错.用向导生成第一个基于对话框的Project之后,当我按照 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf 上的源程序一个字一个字地输进去之后,始终有一个错误: fatal error C1010: unexpected end of file while looking for precompiled header directive.找了无数次之后,我决定把向导生成的包括头文件的语句:include"StdAfx.h"保留(而这之前我是把它删掉了的,因为书 上的例子没有这句.)咦,这下就对了.这是为什么呢?我百思不得其解。 来 到我的VC源代码目录,我注意到每个Project下面的DEBUG文件夹都特别大,而且一个扩展名为 .pch的文件占去了绝大部分,我删掉之好像对程序编译运行没有什么影响。于是抱着对.pch文件的好奇,我在网上搜到了我疑惑之处的解答。这就是 VC++6.0给我们带来的:预编译头文件。预编译头文件(一般扩展名为.PCH),是把一个 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 中较稳定的代码预先编译好放在一个文件(.PCH)里。 这些预先编译好的代码可以是任何的C/C++代码,甚至可以是inline函数,只是它们在整个工程中是较为稳定的,即在工程开发过程中不会经常被修改的 代码。 为什么需要预编译头文件? 一 言以蔽之:提高编译速度.一般地,编译器以文件为单位编译。如果修改了一工程中的一个文件则所有文件都要重新编译,包括头文件里的所有东西 (eg.Macro宏,Preprocessor预处理),而VC程序中,这些头文件中所包括的东西往往是非常大的,编译之将占很长的时间。但它们又不常 被修改,是较稳定的,为单独的一个小文件而重新编译整个工程的所有文件导致编译效率下降,因此引入了.PCH文件。 如何使用预编译头文件以提高编译速度? 要 使用预编译头文件,必须指定一个头文件(.H),它包含我们不会经常修改的代码和其他的头文件,然后用这个头文件来生成一个预编译头文件 (.PCH),VC默认的头文件就是StdAfx.h,因为头文件是不能编译的,所以我们还需要一个.CPP文件来作桥梁,VC默认的文件为 StdAfx.cpp,这个文件里只有一句代码就是:,include "StdAfx.h"。接下来要用它生成.PCH文件,涉及到几个重要的预编译指令:/Yu,/Yc,/Yx,/Fp。简单地说,/Yc是用来生 成.PCH文件的编译开关。在Project->setting->C/C++的Category里的Precompiled Header,然后在左边的树形视图中选择用来编译生成.PCH文件的.CPP文件(默认即StdAfx.cpp),你 就可以看到/Yc这个开关,它 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示这个文件编译了以后是否生成.PCH文件(可能/Yc的c表示create)。/Fp指令指定生成的.PCH文件的名字 及路径(可能/Fp的p代表path)。/Yu的u即use,工程中只要包括了.H文件的文件都会有这个/Yu指令。如果选择自动 Automatic...的话则原来为/Yc的地方就换成了/Yx指令。如果选择自动,则每次编译时编译器会看以前有没有生成过.PCH文件,有则不现生 成否则就再次编译产生.PCH文件。 注意: A, 实际上,由Appzard项目向导生成的默认的头文件及CPP文件StdAfx.h和StdAfx.cpp可以是任何名字的.原因很简单。但如果你要这样 做就要记得修改相应的Project->setting...下的几个预编译指(/Yc,/Yu,/Yx,/Fp)的 参数 转速和进给参数表a氧化沟运行参数高温蒸汽处理医疗废物pid参数自整定算法口腔医院集中消毒供应 。 B. 在任何一个包括了将要预编译的头文件而使用了.PCH文件的工程文件的开头,一定必须要是在最开头,你要包含那个指定生成.PCH文件的.H文件(通 过.CPP文件包括,默认为StdAfx.cpp),如果没包括将产生我最开头产生的错误.如果不是在最开头包括将产生让你意想 不到的莫名其妙错误,如若 不信,盍为试之? C.预编译文件.PCH生成之很耗时间,而且生成之后它也很占磁盘空间,常在5-6M,注意项目完成之后及时清理无用的.PCH文件以节约磁盘空间。 D.如果丢了或删了.PCH文件而以后要再修改工程文件时,可将指定的/Yc的.CPP文件(默认为StdAfx.cpp)重新编译一次即可再次生成.PCH文件,不用傻傻的按F7或Rebuild All 以 前还碰到过另外一种情况:新建一个工程,随便找一个cpp文件,按ctrl+f7系统将会提示:fatal error C1083: 无法打开预编译的头文件:”Debug/xxx.pch”: No such file or directory(其中xxx是工程的名字)这种情况也是一样的原因,为vc的stdafx.h头文件未编译所致。也可以这样解决:先F7,编译后再 ctrf+f7。 注意:VS智能设备程序(如WM5)预编译头文件为stdafx.h。更改设置在项目->XXXX属性->配置属性->C/C++->预编译头 的右侧第一项。
本文档为【MFC编译运行错误之无法打开预编译头文件】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_496339
暂无简介~
格式:doc
大小:14KB
软件:Word
页数:3
分类:企业经营
上传时间:2018-01-14
浏览量:20