如何为自定义类定义数组结构的变量
我定义了一个类是Complex; 又定义了一个类是Matrix;  
  public class Complex
     {
         double re;
         double im;       
         public double Re
         {
             get { return re; }
             set { re = value; }
         }
         public double Im
         {
             get { return im; }
             set { im = value; }
         }
}
   public class Matrix
     {
       private ArrayList Values;
       public int RowCount
         {
             get { return rowCount; }
         }
       public int ColumnCount
         {
             get { return columnCount; }
         }
        private int rowCount;
        public Matrix()
         {
             Values = new ArrayList();
             rowCount = 0;
             columnCount = 0;              
         }
       public Matrix(Complex[,] values)
         {
             if (values == null)
             {
                 Values = new ArrayList();
                 columnCount = 0;
                 rowCount = 0;
             }
             rowCount = (int)values.GetLongLength(0);
             columnCount = (int)values.GetLongLength(1);
             Values = new ArrayList(rowCount);
             for (int i = 0; i < rowCount; i++)
             {
                 Values.Add(new ArrayList(columnCount));
                 for (int j = 0; j < columnCount; j++)
                 {
                     ((ArrayList)Values[i]).Add(values[i, j]);
                 }
             }              
         }
}
现在想在主程序中实现这样的操作,即:
Matrix a = new Matrix (Complex[,] b);
来建立将复数数组b中的数值赋到a 矩阵中,请问如何才能实现?
现在这种状态下, a只带有行宽,列宽属性,但Values无法获得。请问这种情况如何解决?
------解决方案--------------------
我建议你将 Matrix 定义成 Tuple<int, int, Complex>,来表示稀疏矩阵。
或者 Complex[,]。