问题描述:

关于VC++导入pugixml库时

error C2010: ‘ ’:unexpected in macro formal parameter list

与error C1010 unexpected end of file while looking for pre compiled header directive

 

问题原因:

对于第一个error,首先pugixml源码是不可能出现问题的,所以并不是pugixml文件参数宏有问题,一般是编译器版本底造成的,例如VC++6.0是不支持可变参数宏定义的。

对于第二个error:查找预编译头指令时出现意外的文件结尾,只是因为你导入时没有添加对应MFC程序的头文件

解决办法:

error1:将可变参数宏定义删掉,例如:

#   define PUGI_SNPRINIF(buf,...) snprintf(buf,sizeof(buf),__VA_ARGS__)

z这句代码中引发error的原因就是PUGI_SNPRINIF括号中的   点    ,将其删除即可,删除后:

#   define PUGI_SNPRINIF(buf) snprintf(buf,sizeof(buf),__VA_ARGS__)

error2:在pugixml.cpp文件的最上方(记得一定要在所有除注释外的其他代码上方)添加stdafx.h头文件,即:

#include "StdAfx.h"

#ifndef SOURCE_PUGIXML_CPP
#define SOURCE_PUGIXML_CPP

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐