问题描述:
关于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