Avatar ·

如何在C++中将一个vector追加到另一个vector的末尾(append vector to vector)

你好!我刚开始学习C++和STL。我有两个vectors,想把第二个vector的所有元素添加到第一个vector的末尾。我试了几种方法,但没有一个像预期那样工作。 这是我的代码: ```cpp #include #include int main() { std::vector vec1 = {1, 2, 3}; std::vector vec2 = {4, 5, 6}; // 尝试将vec2追加到vec1 vec1.append(vec2); // 错误:没有append方法 // 尝试通过insert vec1.insert(vec2.begin(), vec2.end()); // 编译错误 // 尝试通过循环使用push_back for (int i = 0; i < vec2.size(); i++) { vec1.push_back(vec2[i]); // 可行,但看起来很糟糕 } return 0; } ``` 第一个选项根本无法编译,因为std::vector没有append方法。第二个选项报错,因为insert需要一个插入位置的迭代器,而我只传了一个范围。第三个选项可行,但我觉得效率不高。