我有 2 个像这样的向量:
std::vector<unsigned char> v1;
std::vector<unsigned char> v2;
Run Code Online (Sandbox Code Playgroud)
当然,他们每个人都有一些数据。
我知道如果我想将 v2 附加到 v1,下面是方法。v1.insert(v1.end(), v2.begin(), v2.end());
问题:
如何将 v1 加到 v2 之前?
v2.insert(v2.begin(), v1.begin(), v1.end())似乎在这里不起作用?
我知道我可能会得到使用的建议,std::deque但问题是这v2是std::vector我无法更改的遗留代码中的一个函数。它包含大量数据,我不想v2通过追加复制到这些数据。所以,我只是想加上v1,v2因为v1与v2
这确实很好用:
std::vector<int> a{ 1,2,3,4 };
std::vector<int> b{ 5, 6, 7 };
a.insert(a.begin(), b.begin(), b.end());
// a is {5, 6, 7, 1, 2, 3, 4}
Run Code Online (Sandbox Code Playgroud)
你遇到了什么问题?