повысить дерево свойств, итераторы для элемента для вставки? - PullRequest
1 голос
/ 29 сентября 2011

Я много искал в руководстве по бусту и в Интернете, так как считаю, что это довольно стандартная функция?

Что ж, я изучаю "слияние" деревьев свойств.- Я заметил функцию insert и надеюсь, что смогу объединить деревья с этим?Ниже приведена строка, которую я пытаюсь заставить работать:

base.insert(base.get_child("BRANCH"), t);

base и t являются "деревьями свойств", base имеет (одну из многих) ветвь "ФИЛИАЛ".Теперь я хочу вставить t в эту ветку?
Более конкретно: как я могу получить итератор для "элемента", если я знаю этот элемент по имени?

1 Ответ

1 голос
/ 30 сентября 2011

Вы можете получить итератор для элемента, используя метод begin () :

  base.get_child("BRANCH").begin();

Чтобы вставить каждый элемент в t в этой позиции, вы должны использовать:

base.insert(base.get_child("BRANCH").begin(), t.begin(), t.end());

Если t содержит один родительский узел или вы хотите вставить только первый узел, вы можете использовать:

base.insert(base.get_child("BRANCH").begin(), t.front());
...