1

我通过 boost 手册和互联网搜索了很多,因为我相信这是一个相当标准的功能?

好吧,我正在研究“合并”属性树。- 我注意到了这个功能insert,我希望我可以用这个合并树?下面是我试图开始工作的那一行:

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

base并且t是“财产树”,base具有(许多)分支“BRANCH”。现在我想插入t这个分支?
更具体地说:如果我知道该元素的名称,如何获得“元素”的迭代器?

4

1 回答 1

1

您可以使用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());
于 2011-09-29T22:33:36.043 回答