社区
VC.NET
帖子详情
我定义了一个普通类。为什么去掉#include "StdAfx.h"会出现:fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾
code2004
2005-11-01 03:26:00
谢谢大家
...全文
212
4
打赏
收藏
我定义了一个普通类。为什么去掉#include "StdAfx.h"会出现:fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾
谢谢大家
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xwdd129
2005-11-04
打赏
举报
回复
应该在cpp文件开头加上#include "stdfx.h"。因为stdfx.h中写入的是需要预编译的.h文件,在stdfx.cpp中只有一句话include "stdfx.h",这样编译器就直接对stdfx.cpp进行编译,在debug目录下生成预编译文件stdfx.pch。
预编译头文件可以大大提高编译效率。
thinboyxp
2005-11-04
打赏
举报
回复
在项目属性里面把使用预编译头文件选项设成不使用试试。
tiger波波
2005-11-04
打赏
举报
回复
为什么要去掉呢
兔子-顾问
2005-11-01
打赏
举报
回复
这个文件包含了一个头文件
#include <afxwin.h>
只有包含这个afxwin.h才可以使用mfc类库,还有些别的,反正这个文件不可以不要就是了。除非你写sdk程序或者console程序。
VC++常见错误一览表
1、
fatal
error
C1010
: unexpected end of file while looking for precompiled header directive。 寻找
预编译
头
文件
路径
时
遇到
了不该
遇到
的
文件
尾。(一般是没有#
include
"
std
afx
.h") 2、
fatal
error
C1083: Cannot open
include
file: 'R…….h': No such file or directory 不能打开包含
文件
“R…….h”:没有这样的
文件
或目录。 3、
error
C2011: 'C……': 'class' type redefinition
类
“C……”重
定义
。
终于搞懂了,
预编译
头
文件
预编译
头
文件
今天在改
一个
很大的程序,慢慢看,慢慢改。突然发现
一个
.c
文件
,里面什么也没有,就几个
头
文件
,我一看,我靠,这不是把简单的问题搞复杂了吗,随手删掉那个c
文件
。结果不能编译了,我靠:
fatal
error
C1083: Cannot open precompiled header file: \'Debug/v13_3.pch\':No such file or directory怎么rebuild all都不行。上网查了一下,才搞懂了:----------------总结------如果工程很大,
头
文件
很多,而有几个
头
文件
又是经常要用的,那么1。把这些
头
文件
全部写到
一个
头
文件
里面去,比如写到preh.h2。写
一个
preh.c,里面只一句话:#
include
"preh.h"3。对于preh.c,在project setting里面设置creat precompiled headers,对于其他.c
文件
,设置use precompiled header file//哈哈我试了一下,效果很明显,不用precompiled header,编译一次我可以去上个厕所,用precompiled header,编译的
时
候,我可以站起来伸个懒腰,活动活动就差不多啦---------转载的文章----------
预编译
头
的概念:所谓的
预编译
头
就是把
一个
工程中的那一部分代码,预先编译好放在
一个
文件
里(通常是以.pch为扩展名的),这个
文件
就称为
预编译
头
文件
这些预先编译好的代码可以是任何的C/C++代码--------甚至是inline的函数,但是必须是稳定的,在工程开发的过程中不
会
被经常改变。如果这些代码被修改,则需要重新编译生成
预编译
头
文件
。注意生成
预编译
头
文件
是很耗
时
间的。同
时
你得注意
预编译
头
文件
通常很大,通常有6-7M大。注意及
时
清理那些没有用的
预编译
头
文件
。也许你
会
问:现在的编译器都有Time stamp的功能,编译器在编译整个工程的
时
候,它只
会
编译那些经过修改的
文件
,而不
会
去编译那些从上次编译过,到现在没有被修改过的
文件
。那么为什么还要
预编译
头
文件
呢?答案在这里,我们知道编译器是以
文件
为单位编译的,
一个
文件
经过修改后,
会
重新编译整个
文件
,当然在这个
文件
里包含的所有
头
文件
中的东西(.eg Macro, Preprocesser )都要重新处理一遍。VC的
预编译
头
文件
保存的正是这部分信息。以避免每次都要重新处理这些
头
文件
。
预编译
头
的作用:根据上文介绍,
预编译
头
文件
的作用当然就是提高便宜速度了,有了它你没有必要每次都编译那些不需要经常改变的代码。编译性能当然就提高了。
预编译
头
的使用:要使用
预编译
头
,我们必须指定
一个
头
文件
,这个
头
文件
包含我们不
会
经常改变的代码和其他的
头
文件
,然后我们用这个
头
文件
来生成
一个
预编译
头
文件
(.pch
文件
)想必大家都知道
Std
Afx
.h这个
文件
。很多人都认为这是VC提供的
一个
“系统级别”的,编译器带的
一个
头
文件
。其实不是的,这个
文件
可以是任何名字的。我们来考察
一个
典型的由AppWizard生成的MFC Dialog Based 程序的
预编译
头
文件
。(因为AppWizard
会
为我们指定好如何使用
预编译
头
文件
,默认的是
Std
Afx
.h,这是VC起的名字)。我们
会
发现这个
头
文件
里包含了以下的
头
文件
:#
include
// MFC core and standard components#
include
// MFC extensions#
include
// MFC Automation classes#
include
// MFC support for Internet Explorer 4Common Controls#
include
VC++最常见的20种编译错误信息
1、
fatal
error
C1010
: unexpected end of file while looking for precompiled header directive。 寻找
预编译
头
文件
路径
时
遇到
了不该
遇到
的
文件
尾。(一般是没有#
include
"
std
afx
.h") 2、
fatal
error
C1083: Cannot open
include
file: ''R…….h'': No such file or directory 不能打开包含
文件
“R…….h”:没有这样的
文件
或目录。 3、
error
C2011: ''C……'': ''class'' type redefinition
类
“C……”重
定义
。 4、
error
C2018: unknown character ''0xa3'' 不认识的字符''0xa3''。(一般是汉字或中文标点符号) ........ ....... .....
基于VC中使用Force
Include
来强制包含
std
afx
.h的解决方法
在使用VC编程中,为了加快编译,vc编译器提供了
预编译
的功能。即在cpp代码中包含
std
afx
.h,那么就可以使用到
预编译
。如下所示: 代码如下:#
include
“
std
afx
.h”class Demo{public: Demo(void); ~Demo(void);};注意: #
include
“
std
afx
.h” 是自己手动写的,默认是没有的。因此,有
时
总
会
出现
忘记写这个的事情,这
时
候编译器就
会
报
一个
错误: 代码如下:
Error
1
fatal
error
C1010
: unexpected end of file while looking for precom
最常见的20种VC++错误
最常见的20种VC++错误,比如:1、
fatal
error
C1010
: unexpected end of file while looking for precompiled header directive。 寻找
预编译
头
文件
路径
时
遇到
了不该
遇到
的
文件
尾。(一般是没有#
include
"
std
afx
.h") 2、
fatal
error
C1083: Cannot open
include
file: 'R…….h': No such file or directory 不能打开包含
文件
“R…….h”:没有这样的
文件
或目录。。。。
VC.NET
7,540
社区成员
27,673
社区内容
发帖
与我相关
我的任务
VC.NET
.NET技术 VC.NET
复制链接
扫一扫
分享
社区描述
.NET技术 VC.NET
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章