0

我的结构有问题。我正在研究蒙特卡洛树搜索算法的实现,并创建了一个名为 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++;


}

有谁知道我该如何解决这个问题?

4

0 回答 0