我有像这样的xml
<w:document>
<w:body>
<w:p>
<abra-cadabra>
<w:t>test</w:t>
</abra-cadabra>
</w:p>
<w:p>
</w:p>
<w:p>
<w:t>test1</w:t>
</w:p>
</w:body>
我使用pugixml来制作它。
pugi::xml_node cur_sibling = cur_node.next_sibling();
if (cur_sibling.name() == "")
find_sibling(cur_node.parent());
这里cur_node是测试节点,next_subling结构如下所示: cur_sibling 抱歉俄语,它sais无法读取记忆 所以我不能用它做任何事情,并试图让它的名称导致堆栈功率错误。不知道发生了什么,为什么它没有返回空节点?
答案 0 :(得分:0)
您的测试节点没有 next_sibling ,cur_sibling
是您可以测试的无效xml_node:
if (!cur_sibling)
如果你看一下会员功能的签名:
const char_t* xml_node::name() const
你可以看到它没有返回字符串而是const char_t*
。然后,您与运营商==
的比较是比较(不同的)地址。