C++vector容器A和B的连接


(1)vectorv1, v2;

想要实现v1, v2的连接

   a、 copy(vt1.begin(), vt1.end(), back_inserter(vt2));

   b、 std::vector   vec_1,   vec_2;

    vec_1.insert(vec_1.end(),  vec_2.begin(),  vec_2.end());

(2)
vectorv1, v2,v3;
for(i = 0; i < 3; i++)
{
v1.pushback(i);
v2.pushback(i+3);
}
想要实现v1, v2的连接v3使v3成为包含(0,1,2,3,4,5)的向量


先 v3.reserve ( v1.size() + v2.size() ) 然后 
copy ( v1.begin(), v1.end(), v3.begin() );
copy ( v2.begin(), v2.end(), v3.begin() + v1.size() );
当 v1 和 v2 都比较大的时候,我这个方法可能比直接 insert 更具有效率

你可能感兴趣的:(C++)