c vector 嵌套vector赋初始值
时间: 2023-11-16 09:58:12 浏览: 26
可以通过以下方式为嵌套的 vector 赋初始值:
```
vector<vector<int>> vv = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
```
这样就创建了一个 3x3 的二维 vector,其中每个元素都是一个包含三个整数的 vector。如果需要更多的行或列,只需要在大括号中添加更多的 vector 即可。
另外,也可以使用 push_back() 函数为嵌套的 vector 添加元素,例如:
```
vector<vector<int>> vv;
vector<int> v1 = {1, 2, 3};
vector<int> v2 = {4, 5, 6};
vv.push_back(v1);
vv.push_back(v2);
```
相关问题
vector嵌套初始化
vector的嵌套初始化可以使用两层花括号来实现。外层花括号表示外层vector的元素,内层花括号表示内层vector的元素,二者之间用逗号隔开。举个例子,如果我们要初始化一个嵌套的char型嵌套vector,可以按照以下方式进行初始化:
vector<vector<char>> board = {{'X', 'X', 'X'}, {'.', '.', '.'}, {'X', '.', 'X'}};
这样就创建了一个3行3列的二维char向量,并初始化了每个元素的值。
其他
三维 vector 初始化
C++ 中的三维 vector 可以通过以下方式进行初始化:
1. 使用默认值:
```c++
vector<vector<vector<int>>> v; // 创建一个三维 vector
```
2. 指定大小并初始化为默认值:
```c++
vector<vector<vector<int>>> v(N, vector<vector<int>>(M, vector<int>(K))); // 创建一个大小为 N*M*K 的三维 vector,每个元素初始化为默认值 0
```
3. 指定大小并初始化为指定值:
```c++
vector<vector<vector<int>>> v(N, vector<vector<int>>(M, vector<int>(K, val))); // 创建一个大小为 N*M*K 的三维 vector,每个元素初始化为指定值 val
```
其中,N、M、K、val 都是整数变量或常量,表示三维 vector 的大小和初始值。注意,在第二种和第三种方式中,vector 内部的元素也是 vector,需要使用嵌套的 vector 初始化方式。