推动时崩溃"这"指向数组的指针。

时间:2016-10-08 12:44:33

标签: c++ crash this

我试图从我的树结构中获取所有叶节点。代码来自ue4,所以只需要对待" TArray"像一个普通的std :: Vector。

TArray<BSPNode *> * BSPNode::getLeafNodes()
{
    TArray<BSPNode *> *  collected = new TArray<BSPNode*>;
    collectLeafNode(collected);
    return collected;
}

void BSPNode::collectLeafNode(TArray<BSPNode *> * leafNodes)
{
    if (leftNode == nullptr && rightNode == nullptr)
    {
      if (leafNodes != nullptr)
      {
        if (this != nullptr)
            leafNodes->Add(this);
      }
    return;
    }

if (leftNode != nullptr)
    leftNode->collectLeafNode(leafNodes);

if (rightNode != nullptr)
    rightNode->collectLeafNode(leafNodes);

    return;
}

调试器显示访问冲突出现在

    if (leftNode == nullptr && rightNode == nullptr)

调试器输出: callstack第95行是if (rightNode != nullptr)第82行if (leftNode == nullptr && rightNode == nullptr) variables

我完全不知道为什么程序崩溃,是否与使用&#34;这相关&#34;指针?提前致谢 :)。

0 个答案:

没有答案