在C++中,我有两个list<T>对象A,B我希望将所有成员添加B到结尾A.我搜索了几个不同的来源,并没有找到一个简单的解决方案(ei A.append(B);),这让我感到惊讶.
做这个的最好方式是什么?
碰巧的是,我在此之后并不关心B(它会在下一行被删除)所以如果有一种方法可以利用它来获得更好的性能,我也对此感兴趣.
Unc*_*ens 177
如果要在B中附加项目副本,可以执行以下操作:
a.insert(a.end(), b.begin(), b.end());
Run Code Online (Sandbox Code Playgroud)
如果要将B 项移动到A的末尾(同时清空B),您可以执行以下操作:
a.splice(a.end(), b);
Run Code Online (Sandbox Code Playgroud)
在你的情况下拼接会更好,因为它只涉及调整链表中的几个指针.
| 归档时间: |
|
| 查看次数: |
57948 次 |
| 最近记录: |