我有一个实例化大小为 4 的多维结构的类,该结构本身有一个 6 的整数数组。它可以编译,但在调试时看不到该数组,并收到常见错误“对象引用未设置为一个实例”对象'。
public class sInfo
{
public int A { get; set; }
public int B { get; set; }
public tsTABLE[] Tables = new tsTABLE[4];
}
public struct tsTABLE
{
public int[] C = new int[6] { 0, 1, 2, 3, 4, 5 };
public int Count { get; set; }
public tsTABLE()
{
}
}
我可以看到 Count 和 C 变量,但 C 数组为空并且没有索引。我已将结构更改为类但无济于事。
有人知道我哪里出错了吗?
tsTABLE 结构体需要初始化。 当您定义结构体时,会自动提供默认构造函数,并且它不会初始化字段。
public struct tsTABLE {
public int[] C;
public int Count { get; set; }
public tsTABLE() {
C = new int[6] { 0, 1, 2, 3, 4, 5 };
Count = 0;
}
}