我是一个使用boost c ++库的新手,想用它来解析一个xml文档,但我无法搞清楚逻辑。
$payer = new \PayPal\Api\Payer();
$payer->setPaymentMethod('paypal');
如果我想访问每个功能标记的参数标记,我应该如何处理它?我可以按如下方式访问功能标记。
<?xml version="1.0"?>
<GCC_XML version="0.9.0" cvs_revision="1.140">
<Function id="_6" name="A" returns="_12" context="_1" location="f1:1" file="f1" line="1" mangled="_Z1Aif">
<Argument name="a" type="_12" location="f1:1" file="f1" line="1"/>
<Argument name="c" type="_13" location="f1:1" file="f1" line="1"/>
</Function>
<Function id="_7" name="B" returns="_14" context="_1" location="f1:7" file="f1" line="7" mangled="_Z1Bf">
<Argument name="d" type="_13" location="f1:7" file="f1" line="7"/>
</Function>
</GCC_XML>
答案 0 :(得分:1)
Boost没有XML库。它有一个属性树库。
这样做完全相同:
BOOST_FOREACH( ptree::value_type const& a, v ) {
if(a.first == "Argument") {
cout << "Argument name : " << a.second.get_child("<xmlattr>.name").data() << endl;
cout << "Argument type : " << a.second.get_child("<xmlattr>.type").data() << endl;
}
}