从另一个类向List添加值抛出NullRefernceException

问题描述 投票:0回答:1

我正在尝试将另一个类的值添加到另一个类中创建的列表中。我已经建立了一个非常简单的实验,但是它总是使我出错。

第一类只是附加到对象的gameObject脚本

public class gameObject : Agent
{
    public Area area;

    public override void Initialize()
    {
        var testData = new test
        {
            name = "test value",
        };
       area.testList.Add(testData);
    }

}

并且我尝试将该值添加到另一个类的列表中,如下所示

public class test
{
    public string name;
}

public class VoxelArea : MonoBehaviour 
{
    public List<test> testList =  new List<test>()
}

为什么值总是返回null?如果我在area类中添加数据,它将正常工作

c# unity3d
1个回答
0
投票

添加之前,您应该初始化testList列表。

public class gameObject : Agent
{
    public Area area;

    public override void Initialize()
    {
        var testData = new test
        {
            name = "test value",
        };
       area.testList = new List<test>();//<--NOTE THIS
       area.testList.Add(testData);
    }

}
© www.soinside.com 2019 - 2024. All rights reserved.