如何在C#中定义C++的指针?万分感激呀!
本人需要把一段C++算法代码翻译成C#,但代码里出现了指针的指针,定义如下:
private double **a;
这样的定义在C#中怎么表示呢?
二是它在实例化时又如下,在double后面跟一个*号,这是什么意思?
a = new double* [n] //n代表一个常数
三是它在用法时,即可作为一维数组用,也可当二维数组用,我就更晕了,没见过指针还能这样用的?
for (i = 0; i < n; i++)
{
a[i] = new double[n + 1];//作为一维数组用
}
a[i - 1][j - 1] = term1 - term2;//作为二维数组用
由于算法很长,可能没有把全部代码贴出来,但代码中真实是这样使用的,我就不明白这是什么意思?
再加上本人C++不才,所以,有高手帮帮忙,万分感激!
如何在C#中定义C++的指针?万分感激呀!
------解决方案--------------------
C# code
double[][] a = new double[n][];
for (int i = 0; i < n; i++)
{
a[i] = new double[n + 1];
}
a[i - 1][j - 1] = term1 - term2;