很急ing.......残念

解决方案 »

  1.   

    CArray模版,其元素也是CArray模版不可以吗
    或者用stl的Vector,其元素也是Vector不也可以了吗
      

  2.   

    谢,不过首先是速度很慢,其次用起来很不方便,所以....
    还有我想问一下,为什么结构体不能用new动态分配内存?
      

  3.   

    谁说结构体不能用new动态分配内存?
    如果不用模版,你也可以自己写一个简单的容器类来实现,也不难啊
      

  4.   

    #include <stdlib.h>
    #include <iostream.h>
    void main()
    {
    int m=2;                //行
      int n=2;               //列int** array;
    array=new int[m];              
    for(int i=0;i<m;i++)
    {
    array[i]=new int[n];
    cin<<array[i];
    }
    for(i=0;i<m;i++)
    for(int j=0;j<n;j++)
    cout<<array[i][j];
    }
      

  5.   

    CArray模版 和 int** array; 的方法都可以
      

  6.   

    我习惯把尺寸可变的二维数组,或者更高维的数组用一维数组来存储,
    int a[m*n];
    for(i=0; i<m; i++)
    {
      for(j=0; j<n; j++)
      {
        a[i*n + j] = xxx;
      }
    }
    这样其实很好用,传递数组的时候,只要额外传递 m, n就可以了。
      

  7.   

    首先动态分配一个指针数组,在给每个指针动态分配长度,即可组成一个而维数组。
    int *pArray[n];
    for (i=0;i<n;i++)
         pArray[i]=new int[m];
    此时pArray[n][m]即为一个可变长度二位数组。