如何在C++中将一个vector附加到另一个vector的末尾?
大家好。我刚开始学习C++和STL,遇到了一个关于vector的问题。我正在编写一个小程序,处理来自不同来源的数据。我有两个`std::vector`对象,需要将它们合并成一个:第二个vector的所有元素应添加到第一个vector的末尾。我尝试了几种方法,但没有一种按预期工作。
以下是我的简化代码示例:
```cpp
#include
#include
int main() {
std::vector vec1 = {1, 2, 3};
std::vector vec2 = {4, 5, 6};
// 尝试将vec2添加到vec1
vec1.push_back(vec2); // 编译错误!
// 或者这样:
// vec1.insert(vec1.end(), vec2); // 也不对
for (int x : vec1) {
std::cout << x << " ";
}
return 0;
}
```
编译器对`push_back`报错,说无法将`std::vector`转换为`int`。我明白`push_back`期望单个元素,而不是整个容器。