在另一个的末尾添加一个向量

Wel*_*len 2 c++ vector

有没有一种方法可以在另一个向量的末尾添加一个向量?例如,如果我的向量是

std::vector<int> v1(3);
std::vector<int> v2(3);

/* ... initialize vectors ... */
/* ... for example, v1 is 1 2 3 and v2 is 4 5 6 ... */
Run Code Online (Sandbox Code Playgroud)

这是最聪明的方式添加v2到最后v1(即获得v1= 1 2 3 4 5 6)而不使用循环和push_back

tem*_*def 8

你可以使用insert:

vec1.insert(vec1.end(), vec2.begin(), vec2.end());
Run Code Online (Sandbox Code Playgroud)

这将添加范围[ vec2.begin(),vec2.end())中的所有元素(即,所有元素vec2)vec1,从位置开始vec1.end()(即,在所有元素之后vec1).

希望这可以帮助!