动态创建二维vector数组

转自:http://hi.baidu.com/studyarea/blog/item/57d1cb6e9570b6d881cb4adf.html

二维vector
vector<vector <int> > ivec(m ,vector<int>(n));    //m*n的二维vector

动态创建m*n的二维vector
方法一:
vector<vector <int> > ivec;
ivec.resize(m);
for(int i=0;i<m;i++) ivec[i].resize(n);

方法二:
vector<vector <int> > ivec;
ivec.resize(m,vector<int>(n));

动态创建二维数组a[m][n]
C语言版:
#include<malloc.h>
int **a=(int **)malloc(m*sizeof(int *));
for(int i=0;i<m;i++)
a[i]=(int *)malloc(n*sizeof(int));

C++版:
int **a=new int*[m];
for(int i=0;i<m;i++) a[i]=new int[n]; 

初始化二维数组

vector<vector <int> > ivec(m ,vector<int>(n,0));    //m*n的二维vector,所有元素为0

 

你可能感兴趣的:(C++,c,vector,语言)