怎么创建一个二维vector
时间: 2023-07-14 08:07:59 浏览: 106
要创建一个二维的 vector,你可以使用嵌套的 vector 来实现。下面是一个创建二维 vector 的示例代码:
```
#include <iostream>
#include <vector>
int main() {
int rows = 3; // 二维 vector 的行数
int cols = 4; // 二维 vector 的列数
// 创建一个二维 vector,并初始化为 0
std::vector<std::vector<int>> matrix(rows, std::vector<int>(cols, 0));
// 修改二维 vector 的元素值
matrix[0][0] = 1;
matrix[1][2] = 2;
matrix[2][3] = 3;
// 输出二维 vector 的元素值
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
std::cout << matrix[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}
```
这段代码创建了一个 3x4 的二维 vector,并将所有元素初始化为 0。然后,通过修改元素值并输出,你可以看到二维 vector 的使用方法。希望能帮到你!
相关问题
用c++写一个使用智能指针 创建一个二维vector指针对象的例子
示例代码:
#include <iostream>
#include <memory>int main()
{
// 创建一个二维vector指针
std::unique_ptr<std::vector<std::vector<int>>> vec2d_ptr(new std::vector<std::vector<int>>()); // 使用智能指针添加一维vector
vec2d_ptr->push_back(std::vector<int>()); // 添加一维vector中的元素
vec2d_ptr->at(0).push_back(10);
vec2d_ptr->at(0).push_back(20);
vec2d_ptr->at(0).push_back(30); // 打印元素
for (const auto &vec : *vec2d_ptr) {
for (const auto &val : vec)
std::cout << val << " ";
std::cout << std::endl;
} return 0;
}
二维vector复制到另一个二维vector
以下是将一个二维vector复制到另一个二维vector的方法:
```cpp
#include <vector>
#include <iostream>
using namespace std;
int main() {
int N = 2, M = 3;
vector<vector<int>> Matrix(N, vector<int>(M, 0)); // 原始的二维vector
vector<vector<int>> CopyMatrix(Matrix); // 复制原始的二维vector到另一个二维vector
// 打印复制后的二维vector
for (int i = 0; i < CopyMatrix.size(); i++) {
for (int j = 0; j < CopyMatrix[i].size(); j++) {
cout << CopyMatrix[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
输出结果:
```
0 0 0
0 0 0
```
阅读全文