怎么初始化二维vector
时间: 2024-03-18 08:32:30 浏览: 138
二维vector初始化,代码可运行
初始化二维vector有几种方法可以选择,包括使用Fill Constructor和resize函数。
使用Fill Constructor的方法有两种:
1. 一步法:使用大括号初始化二维数组,指定行M和列N,并将所有元素初始化为特定的值。例如:`std::vector<std::vector<int>> matrix(M, std::vector<int>(N, 0));` 这将创建一个大小为M行N列的二维vector,并将所有元素初始化为0。
2. 两步法:先创建一个大小为N的一维vector,并将所有元素初始化为特定的值,然后使用该一维vector初始化二维vector。例如:
```cpp
std::vector<int> row(N, 0);
std::vector<std::vector<int>> matrix2(M, row);
```
这将创建一个大小为M行N列的二维vector,并将所有元素初始化为0。
另一种方法是使用resize函数:
1. 使用resize函数可以创建一个大小为M行的二维vector,然后对每一行使用resize函数为其指定列数,并将所有元素初始化为特定的值。例如:
```cpp
std::vector<std::vector<int>> matrix(M);
for (int i = 0; i < M; i++) {
matrix[i].resize(N, 0);
}
```
这将创建一个大小为M行N列的二维vector,并将所有元素初始化为0。
2. 还可以先创建一个空的二维vector,然后使用resize函数为其指定行数和列数,并将所有元素初始化为特定的值。例如:
```cpp
std::vector<std::vector<int>> matrix2;
matrix2.resize(M, std::vector<int>(N, 0));
```
这将创建一个大小为M行N列的二维vector,并将所有元素初始化为0。
请根据你的需求选择适合的方法来初始化二维vector。
阅读全文