如何将一个数组赋值给vector?
时间: 2024-06-13 19:09:53 浏览: 10
可以通过以下两种方式将一个数组赋值给vector:
1. 通过循环遍历数组,将数组中的每个元素逐个插入vector中,代码如下:
```c++
int arr[5] = {1, 2, 3, 4, 5};
vector<int> vec;
for(int i = 0; i < 5; i++){
vec.push_back(arr[i]);
}
```
2. 直接使用数组的首地址和尾地址来初始化vector,代码如下:
```c++
int arr[5] = {1, 2, 3, 4, 5};
vector<int> vec(arr, arr+5);
```
其中,arr表示数组的首地址,arr+5表示数组的尾地址,即数组中最后一个元素的下一个地址。
相关问题
c++ vector 数组赋值
C++中的vector是一种动态数组,可以在运行时根据需要自动调整大小。如果要将一个vector数组赋值给另一个vector数组,可以使用赋值运算符或assign函数。赋值运算符将源数组的元素逐个赋值给目标数组,而assign函数可以用来将源数组的元素赋值给目标数组。
使用赋值运算符的示例代码如下:
```cpp
std::vector<int> source = {1, 2, 3, 4, 5};
std::vector<int> target;
target = source;
```
使用assign函数的示例代码如下:
```cpp
std::vector<int> source = {1, 2, 3, 4, 5};
std::vector<int> target;
target.assign(source.begin(), source.end());
```
以上代码中,source是源数组,target是目标数组。通过赋值运算符或assign函数,将source中的元素赋值给target。
如何给vector的二重数组赋值
可以使用双重循环来对二维vector进行遍历,然后使用下标来对其元素进行赋值。例如,对于一个已经初始化的二维vector `body`,可以使用以下代码对其进行赋值:
```
for(int i = 0; i < 20; i++){
for(int j = 0; j < 30; j++){
body[i][j] = i + j; // 对元素进行赋值
}
}
```
这段代码将会对第i行第j列的元素赋值为i+j。当然,你也可以根据需要来更改赋值的逻辑。