c#中对象的动态数组(或列表)?

时间:2011-12-28 03:22:11

标签: c# nullreferenceexception

我正在尝试这段代码:

private List<book> books;
//private book[] books;
.
.
.
private void button1_Click(object sender, EventArgs e)
        {
            books.Add(new book(book_name.Text));
            //book[0]=new book(book_name.Text);
        }

但是我收到了这个错误:

  

'对象引用未设置为对象的实例。'

我该怎么办?我希望通过事件动态创建对象。

3 个答案:

答案 0 :(得分:6)

您需要初始化列表:

private List<book> books = new List<book>();

答案 1 :(得分:2)

您需要首先实例化books,如下所示:

private List<book> books = new List<book>();

答案 2 :(得分:0)

当你说

A

它只创建一个带有null值的List类型的引用。因此,当您尝试调用List结构的成员函数时,它会给出一个错误,即引用设置为null。

您需要使用构造函数

中的另一个语句初始化变量
private List<book> books;