unexpected end of file while looking for precompiled header directive

        今天在使用Markup读取xml文件时,加入Markup的.h和cpp文件后,即出现了这个问题,后台在网上查了之后,说是预编译头文件的问题。

 

         大致总结如下:

         预编译头文件,既是指通过stdafx.h文件,预编译很多的标准头文件,如#include <afxwin.h>    #include <afxext.h>,这样可以不用在每一个文件中去包含着两个文件

         避免了重复包含的好处,同时,直接使用预编译后的结果,也可以提高运行速度等。预编译后生成的文件是项目下的pch文件。

        编译器通过一个头文件stdafx.h来使用预编译头文件。stdafx.h这个头文件名是可以在project的编译设置里指定的。

       编译器认为,所有在指令#include "stdafx.h"前的代码都是预编译的,它跳过#include "stdafx. h"指令,使用.pch文件编译这条指令之后的所有代码。

 

       因此所有的mfc项目中.cpp文件开头的第一句都是#include"stdafx.h".我们可以看一下。

      而我自己新加入的Markup.cpp第一句没有,我加上后就通过了。

      同时看到有的时候这样处理可能也不行,需要在Settings,选择C/C++选项卡,从Category组合框中选中Precompiled Headers,选择Not Using Precompiled headers。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值