lsd*_*ies 13 size count xml-parsing pugixml
pugixml节点对象是否具有多个子节点方法?我在文档中找不到它,并且必须使用迭代器,如下所示:
int n = 0;
for (pugi::xml_node ch_node = xMainNode.child("name"); ch_node; ch_node = ch_node.next_sibling("name")) n++;
Run Code Online (Sandbox Code Playgroud)
zeu*_*xcg 17
没有内置函数可以直接计算; 另一种方法是使用std::distance:
size_t n = std::distance(xMainNode.children("name").begin(), xMainNode.children("name").end());
Run Code Online (Sandbox Code Playgroud)
当然,这是子节点数量的线性关系; 请注意,计算所有子节点的数量std::distance(xMainNode.begin(), xMainNode.end())也是线性的 - 没有对子节点计数的恒定时间访问.
| 归档时间: |
|
| 查看次数: |
5558 次 |
| 最近记录: |