cpp vector添加到vector末尾
时间: 2023-08-05 18:18:30 浏览: 78
你可以使用`push_back`或者`insert`函数将一个向量添加到另一个向量的末尾。以下是两种方法的示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> v1{1, 2, 3};
std::vector<int> v2{4, 5, 6};
// 方法1:使用push_back函数
for (auto i : v2) {
v1.push_back(i);
}
// 方法2:使用insert函数
v1.insert(v1.end(), v2.begin(), v2.end());
for (auto i : v1) {
std::cout << i << " ";
}
return 0;
}
```
这个程序会输出:
```
1 2 3 4 5 6
```
在这个例子中,我们使用了两种方法将`v2`向量添加到`v1`向量的末尾。第一种方法是使用`push_back`函数,它将`v2`中的每个元素依次添加到`v1`的末尾。第二种方法是使用`insert`函数,它的第一个参数是插入位置,这里我们使用了`v1.end()`,表示插入到`v1`的末尾。第二个参数是要插入的起始位置,第三个参数是要插入的结束位置。在这个例子中,我们将整个`v2`向量插入到了`v1`中。
相关问题
cpp vector 如何添加变量
在C++中,`std::vector` 是一种序列容器,它允许动态数组的存储,并且可以随时增加或减少存储的数据量。你可以通过多种方法向 `std::vector` 中添加元素,以下是一些常见的方法:
1. 使用 `push_back()` 函数:
`push_back()` 函数用于在 `vector` 的末尾添加一个新元素。新元素的值可以是单个值或者另一个容器中的元素。
示例:
```cpp
std::vector<int> myVector;
myVector.push_back(10); // 添加单个元素
myVector.push_back(20); // 继续添加单个元素
```
2. 使用 `emplace_back()` 函数:
`emplace_back()` 函数在 `vector` 的末尾直接构造元素,这比使用 `push_back()` 更高效,因为它不需要先创建一个临时对象再进行复制或移动。
示例:
```cpp
std::vector<std::pair<int, int>> myVector;
myVector.emplace_back(1, 2); // 直接构造一个pair元素
```
3. 使用 `insert()` 函数:
`insert()` 函数可以在 `vector` 中的指定位置插入一个或多个元素。它有多种重载形式,可以根据需要选择不同的方式来插入元素。
示例:
```cpp
std::vector<int> myVector;
myVector.insert(myVector.begin(), 10); // 在vector的开始位置插入一个元素
myVector.insert(myVector.end(), 20); // 在vector的末尾插入一个元素
```
4. 使用 `assign()` 函数:
`assign()` 函数用于替换 `vector` 中的所有元素。它通过调用赋值运算符来重新分配 `vector` 的大小,并用新元素替换原有元素。
示例:
```cpp
std::vector<int> myVector;
myVector.assign({1, 2, 3}); // 替换vector的所有元素为一个新列表
```
cpp vector插入vector
你可以使用`insert`函数将一个向量插入到另一个向量中。以下是一个示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> v1{1, 2, 3};
std::vector<int> v2{4, 5, 6};
v1.insert(v1.end(), v2.begin(), v2.end());
for (auto i : v1) {
std::cout << i << " ";
}
return 0;
}
```
这个程序会输出:
```
1 2 3 4 5 6
```
这里,我们使用了`insert`函数,将`v2`中的元素插入到`v1`的末尾。`insert`函数的第一个参数是插入位置,这里我们使用了`v1.end()`,表示插入到`v1`的末尾。第二个参数是要插入的起始位置,第三个参数是要插入的结束位置。在这个例子中,我们将整个`v2`向量插入到了`v1`中。
阅读全文