vector动态二维数组

来源:互联网 发布:国承信手机交易软件 编辑:程序博客网 时间:2024/06/10 06:28

定义了二维数组

vector<vector<int> > array;(注意后面空一格)

有下面几种赋值方式

1、

  1. typedef struct tagVector
  2. {
  3. }
  4. vector<blob> arr;

 

 

2、

  1. for(int i=0;i!=10;++i){
  2.       vec.push_back(vector (10));
  3.       for(int j=0;j!=10;++j){
  4.             vec[i][j]=i*j;
  5.    
  6.       }
  7.   } 

 

 

3、

简便的

int N=10,M=10;

vector <vector<int> > array(N, vector<int>(M));//N行M列,动态的

 

4、

  1.   vector<vector<int>  > arr;
  2.  vector<int> item(10);
  3.  for(int i=0;i <10;i++)item[i]=i;
  4.  arr.push_back(item);
  5.  for(int i=0;i <10;i++)cout<<arr[0][i]< <' ';
  6. cout<<endl;


5、从以上各种方法可以看出,列数是固定的,只有行可以动态增长
所以最后一种方法,我们可以做出某一个结构struct,比如blob

  1. typedef struct tagVector
  2. {
  3.      int col[10]   
  4. }
  5. vector<blob> arr;

在下一篇文中中我会总结一下vector更多的用法,主要是实际中我用到的,比如排序之类

 

 

  

原创粉丝点击