我正在寻找最有效的方法来复制向量中向量列表的内容。我想尽可能避免内存重新分配。
我的问题如下:我有:
a
std::vector<int> v
包含 N 个元素向量列表
std::vector< std::vector<int>* > vlist
而且我知道 vlist 的向量中的元素总数 M <= N (N 和 M 可能非常大)
我想在 v 中复制 vlist 的所有元素(首先是 vlist[0] 的所有元素,然后是 vlist[1] 的所有元素等),最后将 v 的大小减小到 M(我的项目不要'不使用 C++2011)。
如何尽可能有效地做到这一点?
非常感谢。
编辑:备注:v 已经填充了 N 个元素,我想用来自其他向量的 M (<= N) 个元素替换它们。