我的结构有问题。我正在研究蒙特卡洛树搜索算法的实现,并创建了一个名为 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++;
}
有谁知道我该如何解决这个问题?