struct struct initializing类型的Unity struct变量

时间:2017-10-27 10:46:35

标签: unity3d struct artificial-intelligence montecarlo monte-carlo-tree-search

我的结构有问题。我正在研究蒙特卡罗树搜索算法的实现,我创建了一个名为Node的结构,它具有特定的变量。 现在我需要存储父类型以及node类型的子对象。由于节点可以是其他节点的父节点,也可以是节点的子节点,因此这很重要。

[System.Serializable]
public struct Node
{
    public Transform[,] CurrentField_V;
    public Transform[,] CurrentField_H;
    public Transform[,] CurrentField_Boxes;
    public Node [] nodeChildren;
    public Node [] parent;
    public int result;
    public bool isTerminal;
    public bool alreadyChecked;
    public int y;
    public int x;
    public int visitTimes;

这就是问题所在:

public Node Expand(Node v)
{
    Debug.Log("Start EXPANSION");
    //create a new node
    Node newNode = new Node();
    newNode.parent[0] = v; //---------> NULL REFERENCE EXCEPTION
    newNode.CurrentField_V = v.CurrentField_V;
    newNode.CurrentField_H = v.CurrentField_H;
    v.nodeChildren[counter] = newNode;//---------> NULL REFERENCE EXCEPTION
    newNode.visitTimes++;


}

有没有人知道如何解决这个问题?

0 个答案:

没有答案