数组中的类; System Null引用异常

时间:2017-01-20 08:45:37

标签: c# arrays class

我正在从我自己的班级创建一个构造:

namespace testproject
{
    public class frameSructure
    {
        public string type = "n/a";
        public string reader = "n/a";
    }
}

当我在一个表单中使用它作为单个构造时,一切都很好但是当我创建一个数组时,当我尝试使用它时:

namespace testproject
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public frameSructure[] frame = new frameSructure[10];
        private void Form1_Load(object sender, EventArgs e)
        {
            frame[1].type = "n/a";
        }
    }
}

我得到一个系统空引用异常。 {“对象引用未设置为对象的实例。”}

frame[1].type = "n/a"; 

有人可以帮助我理解为什么吗? 谢谢

2 个答案:

答案 0 :(得分:0)

您需要先向数组添加项目。在您的代码中,您只创建了一个帧结构类型的空数组。

您可以像这样添加项目到数组......

frame[1]= new frameSructure();

答案 1 :(得分:0)

您已初始化数组,但未初始化其中的值。 这意味着虽然数组确实有10个条目,但它们都是空的。

将表单加载更改为:

    private void Form1_Load(object sender, EventArgs e)
    {
        frame[1] = new frameSructure();
        frame[1].type = "n/a";
    }

顺便说一下,c#中的数组从0开始,而不是1。

相关问题