Я пытаюсь передать элементы boost::property_tree::ptree функции. Подробно, я должен следовать XML-коду, из которого инициализируется ptree:
<Master Name='gamma'>
<Par1 Name='name1'>
<Value>0.</Value>
<Fix>1</Fix>
</Par1>
<Par2 Name='name2'>
<Value>0.</Value>
<Fix>1</Fix>
</Par2>
</Master>
Я хотел бы передать часть этого функции. В основном я хочу пройти:
<Par2 Name='name2'>
<Value>0.</Value>
<Fix>1</Fix>
</Par2>
Функция может выглядеть так:
void processTree( which_type_do_I_put_here element ){
std::string n = element.get<std::string>("<xmlattr>.Name");
double val = element.get<double>("Value");
}
В общем, я мог передать поддерево, используя ptree::get_child("par2")
. Недостатком этого является то, что функция не имеет доступа к <xmlattr>
этого узла.
Как я могу передать эту часть дерева с доступом к <xmlattr>
? Заранее спасибо за любые идеи.
~ Питер
<xmlattr>
ничего особенного, это просто дочернее дерево. Таким образом,get_child("par2")
просто возвращает дерево, имеющее<xmlattr>
дочерних дерева. - person zett42   schedule 25.02.2017