1
У меня есть следующее дерево свойств.Boost: Как добавить дочернее дерево в существующее дерево
propset1
{
prop1 2
prop2 5
prop3 60
prop4 7
}
Я пытаюсь добавить к нему пару дочерних деревьев, чтобы получившееся дерево свойств выглядело ниже.
propset1
{
prop1 2
prop2 5
prop3 60
prop4 5
childset1
{
child1prop1 4
child1prop1 6
child1prop1 9
}
childset2
{
child2prop1 2
child2prop1 6
child2prop1 7
}
}
Я написал следующий код.
// Add General config
pt::ptree propset1;
propset1.put("propset1.prop1", 2);
propset1.put("propset1.prop2", 5);
propset1.put("propset1.prop3", 60);
propset1.put("propset1.prop4", 7);
// Add childset1 config
pt::ptree childset1;
childset1.add("child1prop1", 4);
childset1.add("child1prop2", 6);
childset1.add("child1prop3", 9);
propset1.add_child("childset1", childset1);
// Add childset2 config
pt::ptree childset2;
childset2.add("child2prop1", 2);
childset2.add("child2prop2", 6);
childset2.add("child2prop3", 7);
propset1.add_child("childset2", childset2);
Однако приведенный выше код выводится ниже дерева свойств.
propset1
{
prop1 2
prop2 5
prop3 60
prop4 5
childset1
{
child1prop1 4
child1prop1 6
child1prop1 9
}
}
propset1
{
prop1 2
prop2 5
prop3 60
prop4 5
childset2
{
child2prop1 2
child2prop1 6
child2prop1 7
}
}
Может кто-нибудь предложить вам правильное использование API?
Для развлечения, версия с UDLS: [ Live On Coliru] (http://coliru.stacked-crooked.com/a/658842e2d5e040fc) – sehe
Спасибо. Мне не хватало использования ссылки, когда я получал pt.get_child («propset1»); и, следовательно, каждый раз добавляли дочерние узлы в новый объект. – AnilJ