c++二维vector初始化
时间: 2023-10-23 13:10:31 浏览: 79
C++中二维vector的初始化有多种方法。其中,三种常用的初始化方法如下:
方法一:
```cpp
#include <vector>
int main() {
int a = 2;
int b = 4;
std::vector<std::vector<int>> vec(a, std::vector<int> (b));
int m = vec.size(); //实际行元素个数
int n = vec[0].size(); //实际列元素个数
}
```
方法二:
```cpp
#include <vector>
int main() {
int a = 2;
int b = 4;
std::vector<std::vector<int>> vec1 = std::vector<std::vector<int>>(a, std::vector<int>(b));
}
```
方法三:
```cpp
#include <vector>
int main() {
int a = 2;
int b = 4;
std::vector<std::vector<int>> vec2 = std::vector<std::vector<int>>(a, std::vector<int>(b)) = { { 0, 0, 0, 0 }, { 0, 1, 2, 3 } };
}
```
相关问题
c++ 二维vector初始化
二维vector的初始化可以有多种方法。
引用中的代码展示了一种方法,即在定义vector的同时设置大小和初始值。例如,可以使用`vector<vector<int>> v(2, vector<int>(4, 1))`来定义一个2行4列的二维vector,并且将所有元素初始化为1。
引用中的代码展示了另一种方法,先定义vector,然后通过resize()函数设置大小,再通过循环为每个元素赋值。例如,可以先定义`vector<vector<int>> v(2)`,然后通过循环和resize()函数将每行的列数设置为4,并为每个元素赋值为1。
另外,还可以使用push_back()函数动态地向vector中添加元素,并在需要时为每个元素添加值。
以上是二维vector初始化的几种常见方法,具体使用哪种方法取决于具体的需求和代码结构。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [C++ 二维vector初始化、resize()](https://blog.csdn.net/DreamLike_zzg/article/details/86760751)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
c++vector二维初始化
C++中的vector是一个动态数组,可以方便地进行二维数组的初始化。常见的二维数组初始化方法有以下几种:
1.使用vector的构造函数进行初始化:
vector<vector<int>> vec(a, vector<int>(b));
其中a表示行数,b表示列数,这样就可以初始化一个a行b列的二维数组。
2.使用vector的resize函数进行初始化:
vector<vector<int>> vec;
vec.resize(a);
for(int i=0;i<a;i++){
vec[i].resize(b);
}
其中a表示行数,b表示列数,resize函数可以将vector的大小调整为指定大小,这样就可以初始化一个a行b列的二维数组。
3.使用花括号进行初始化:
vector<vector<int>> vec = {{0,0,0,0},{0,1,2,3}};
其中第一个花括号表示第一行,第二个花括号表示第二行,这样就可以初始化一个2行4列的二维数组。