今天在调试程序的时候,需要用二维数组保存程序中间状态,但是C++中并不提供二维数组,需要通过指针数组创建,比较麻烦。经过调研发现了一种比较简单的实现二维数组的方法,记录如下。
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<vector<int> > t(3, vector<int>(3));
for(int i = 0; i < 3; i++){
for(int j = 0; j < 3; j++){
t[i][j]=i*3+j+1;
}
}
for(int i = 0; i < 3; i++){
for(int j = 0; j < 3; j++){
cout<<t[i][j]<<"\t";
}
cout<<endl;
}
return 0;
}
注意:定义二维数组时,vector<int后两个">"之间要有空格!否则会被认为是重载">>"。