Joh*_*ohn 5 c# arrays multidimensional-array
我正在尝试将以下内容(缩短为了可读性)转换为C#并遇到问题
#define DISTMAX 10
struct Distort {
int a_order;
double a[DISTMAX][DISTMAX];
};
Run Code Online (Sandbox Code Playgroud)
我认为在结构中这是一个使用"固定"的简单情况,但我仍然遇到问题.
这就是我所拥有的(在页面上方定义更高):
const int DISTMAX = 10;
struct Distort
{
int a_order;
fixed double a[DISTMAX,DISTMAX];
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是语法错误,而且[由于我期望的是单个维度数组的限制,因此是预期的.
有没有解决的办法?
固定大小的缓冲区只能是一维的.你需要使用:
unsafe struct Distort
{
int a_order;
fixed double a[DISTMAX * DISTMAX];
}
Run Code Online (Sandbox Code Playgroud)
然后进行适当的算术以获得单个值.