所以我已经做了好几天了,我不知道为什么会抛出 BAD_ACCESS 错误。有时有效,有时无效。
void xmlParser::parseXML(string file){
tinyxml2::XMLDocument doc;
if(!doc.LoadFile(file.c_str()))
{
cout << "ERROR: TINYXML2 FAILED TO LOAD" << endl;
}
//XML FILE LAYOUT:
//<item>
// <type id="laserWeapon" name="Laser Rifle">
// <tooltip>
// <stats>
//</item>
//error seems to occur on this line
tinyxml2::XMLElement* elementType = doc.FirstChildElement("item")->FirstChildElement("type");
string id = elementType->Attribute("id");
string name = elementType->Attribute("name");
cout << "id: " << id << endl;
cout << "name: " << name << endl;
}
我使用 xmlparser.parseXML(xmlparser.path+"laserRifle.xml"); 加载文件。我应该将其解析为字符串,还是我忽略了一些 null ptr?我试图做一个'if nullptr'子句,但它仍然是一个错误而不是跳过它。
关于做什么的任何建议?我完全迷失了。