I am converting vb6 code to C# and I have a question regarding array argument. In vb6 the array argument below sometimes take the form of 1Dimension or MultiD where it is Redim depending on how it comes. C# does not allow this.....my question is, how do I handle it?
public double[] ConvertMatrixToBase0(double[] MyMat) { long i, j; double[] ConvMat;
if(MultiDimensional(MyMat) == false) //1-dimensional array { ConvMat = new double[MyMat.GetLength(1) - 1]; //ReDim ConvMat(UBound(MyMat, 1) - 1) for(i=1; i<=MyMat.GetLength(1); i++) //For i = 1 To UBound(MyMat, 1) ConvMat[i - 1] = MyMat[i];
} else //multi-dimensional array { ConvMat = new double[MyMat.GetLength(1)-1, MyMat.GetLength(2)-1]; //ReDim ConvMat(UBound(MyMat, 1) - 1, UBound(MyMat, 2) - 1) for(i=1; i<=MyMat.GetLength(1); i++) //For i = 1 To UBound(MyMat, 1) { for(j=1; j<=MyMat.GetLength(2); j++) //For j = 1 To UBound(MyMat, 2) ConvMat[i-1,j-1] = MyMat[i,j]; } }
return ConvMat;}