【C++利用vector创建二维数组的几种方法总结】
嗨,大家好!我是你们的编程小能手,今天我要给大家带来一篇关于C++中如何使用vector创建二维数组的
教程。无论你是编程新手,还是对C++有一定了解的开发者,只要跟着我的步骤走,保证你能够轻松应对在
编程中可能遇到的二维数组问题。
1. 什么是vector?
vector是C++中一种动态数组的数据结构,它可以在运行时改变大小。与普通的静态数组不同,vector
不需要在初始化时指定大小,它可以自动增长以适应存储需求。
2. 为什么使用vector创建二维数组?
虽然C++标准库中没有直接的二维数组类型,但我们可以使用vector来创建一个二维数组。使用vector
创建二维数组的好处包括:
动态大小:vector可以根据需要动态地增加或减少大小。
无需预先指定大小:不需要在编译时知道数组的大小,这使得vector更加灵活。
高效的内存管理:vector内部使用智能指针,可以有效地管理内存。
3. 使用vector创建二维数组的几种方法
下面,我将为你展示几种使用vector创建二维数组的方法。
方法一:使用嵌套的vector
方法二:使用vector的resize函数
#include <iostream>
#include <vector>
int main() {
std::vector<std::vector<int>> twoDVector;
twoDVector.push_back(std::vector<int>(3, 1)); // 添加一个有3个元素,每个元素都是1
的vector
twoDVector.push_back(std::vector<int>(3, 2)); // 添加一个有3个元素,每个元素都是2
的vector
// 访问二维数组中的元素
for (int i = 0; i < twoDVector.size(); i++) {
for (int j = 0; j < twoDVector[i].size(); j++) {
std::cout << twoDVector[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <vector>
int main() {
std::vector<std::vector<int>> twoDVector;
twoDVector.resize(2); // 初始化两个vector
twoDVector[0].resize(3, 1); // 第一个vector有3个元素,每个元素都是1
twoDVector[1].resize(3, 2); // 第二个vector有3个元素,每个元素都是2
// 访问二维数组中的元素
for (int i = 0; i < twoDVector.size(); i++) {
for (int j = 0; j < twoDVector[i].size(); j++) {
1
2
3
4
5
6
7
8
9
10