c++ vector容器存数组元素
时间: 2023-10-14 21:27:33 浏览: 52
你可以使用 vector 容器的一个构造函数来存储数组元素。该构造函数接受两个迭代器参数,分别指向数组的第一个和最后一个元素。下面是一个示例代码:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
vector<int> vec(arr, arr + n);
for (int i = 0; i < vec.size(); i++) {
cout << vec[i] << " ";
}
return 0;
}
```
输出:
```
1 2 3 4 5
```
在上面的代码中,我们首先定义了一个整数数组 `arr`,然后计算数组的长度 `n`。接下来,我们使用 vector 容器的构造函数来创建一个包含 `arr` 中所有元素的 vector 容器 `vec`。最后,我们使用一个 for 循环来遍历 vector 容器并输出其所有元素。
相关问题
c++ vector容器存结构体数组元素
可以使用vector容器存储结构体数组元素,具体做法如下:
1. 定义结构体类型和vector容器:
```c++
struct Student {
string name;
int age;
};
vector<Student> studentList;
```
2. 向vector容器中添加元素:
```c++
Student s1 = {"Tom", 18};
Student s2 = {"Jerry", 19};
studentList.push_back(s1);
studentList.push_back(s2);
```
3. 遍历vector容器中的元素:
```c++
for (int i = 0; i < studentList.size(); i++) {
cout << "Name: " << studentList[i].name << ", Age: " << studentList[i].age << endl;
}
```
注意,使用vector容器存储结构体数组元素时,需要定义结构体类型,然后使用vector<结构体类型>定义容器,再将结构体元素添加到容器中。遍历容器时,可以使用for循环或者迭代器来访问容器中的元素。
c++vector二维数组
C++中的vector是一个动态数组容器,可以方便地进行元素的插入、删除和访问。二维数组可以通过vector嵌套来实现。
下面是使用vector实现二维数组的示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
// 创建一个二维数组,大小为3行4列
std::vector<std::vector<int>> matrix(3, std::vector<int>(4));
// 给二维数组赋值
for (int i = 0; i < matrix.size(); i++) {
for (int j = 0; j < matrix[i].size(); j++) {
matrix[i][j] = i * matrix[i].size() + j;
}
}
// 输出二维数组的值
for (int i = 0; i < matrix.size(); i++) {
for (int j = 0; j < matrix[i].size(); j++) {
std::cout << matrix[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}
```
上述代码中,我们首先创建了一个大小为3行4列的二维数组`matrix`,其中每个元素都是int类型。然后使用两层循环给二维数组赋值,并输出二维数组的值。