vector 二维数组

 最近在刷题的时候遇到过好几次二维数组的问题,因为我自己想在C++方向发展,所以尽可能地用C++提供的STL来完成编程,但是在使用二维数组的时候遇到了麻烦,就是如果用int[][]这种直接表示方式很简单,如果用vector的话就有点麻烦,为此我也查了一下资料。
  定义一个二维整形数组并初始化:

vector<vector<int> > array(m); //这个m一定不能少
//初始化一个m*n的二维数组
for(int i=0;i<m;i++) {
    array[i].resize(n);
}
#include<iostream>
#include<vector>
using namespace std;

int main() {
    vector<vector<int> > array(4);
    for(int i=0;i<4;i++) {
        array[i].resize(5);
    }
    //输出二维数组的行和列 
    cout<<"Row:"<<array.size()<<"  Column:"<<array[0].size()<<endl;
    //输出二维数组 
    cout<<"["<<endl;
    for(int j=0;j<array.size();j++) {
        cout<<"["<<" ";
        for(int k=0;k<array[0].size();k++) {
            cout<<array[j][k]<<" ";
        }
        cout<<"]"<<endl;
    }
    cout<<"]"<<endl;
    return 0;
} 

运行结果:
这里写图片描述

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页