note DatabaseItem只接受一个节点并填充数据. xml中有3个音符.
XML:
<?xml version="1.0" enCoding="utf-8"?><noteCollection> <note name="Test Note 1">This is test note 1 content!</note> <note name="Test Note 2">This is test note 2 content!</note> <note name="Test Note 3">This is test note 3 content!</note></noteCollection>
C :
std::vector<notekeeper::noteDatabaseItem> noteList;tixmlElement* noteCollection = xmlDoc->FirstChildElement("noteCollection");tixmlElement* node = noteCollection->FirstChildElement("note");int itemCount = 0;while (node != NulL) { itemCount++; noteList.resize(itemCount); noteList.push_back(noteDatabaseItem(node)); node = noteCollection->NextSiblingElement("note");}解决方法 不应该是node = node-> NextSiblingElement(“note”)?
noteCollection只有孩子,而不是兄弟姐妹,对吧?
总结以上是内存溢出为你收集整理的c – 为什么这个循环只运行一次?全部内容,希望文章能够帮你解决c – 为什么这个循环只运行一次?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)