首页 > 代码库 > vector创建2维数组

vector创建2维数组

以前我要建立一个二维数组,总是使用 
int N=5, M=6; 
vector<vector<int> > Matrix(N); 
for(int i =0; i< Matrix.size(); i++){ 
   Matrix[i].resize(M); 

上面多写了三行,就是为了指定 Matrix 的烈数。 
今天才发现,可以用更简单的方法完成上面的工作 
下面的一行就可以代替上面的四行 
vector<vector<int> > Matrix(N, vector<int>(M)); 

 

#include <iostream>using namespace std;#include <vector>int main(void){  vector <vector <int>>   array(3,vector<int>(3));//    vector<vector <int>>array(3);//    for (int i = 0; i <3; i++)//        array[i].resize(3);//设置数组的大小3X3 //现在你可以和使用数组一样使用这个vector     for (int i = 0; i <3; i++)        for (int j = 0; j <3; j++)            array[i][j] = (i*j);    //输出     for (int i = 0; i <3; i++)    {        for (int j = 0; j <3; j++)            cout <<array[i][j] << "   ";        cout <<endl;    }    cout << "-------------" << endl;    array[0].swap(array[1]);  //数组交互    for (int i = 0; i <3; i++)    {        for (int j = 0; j <3; j++)            cout << array[i][j] << "   ";        cout << endl;    }}

技术分享

 

vector创建2维数组