gpt4 book ai didi

get 语句时 C++ 崩溃?

转载 作者:太空宇宙 更新时间:2023-11-04 11:29:41 26 4
gpt4 key购买 nike

我遇到了一个……有趣的问题。我发现我的程序在标准 get 语句上崩溃。对于上下文,我正在覆盖 onEnter函数(来自 Cocos2dx 框架)在进一步场景修改后交换图像。

我的修改如下:

图标是map< ClassA, CCSprite* >

current属于 ClassA

void onEnter(){
<parent class>::onEnter();
CCSprite* sprite = icons[current];
if (sprite){
CCNode* parent = sprite->getParent(); //Crashes Here
if (parent){...}
}
}

来自 Cocos2d-x:

CCNode* getParent(){
return m_pParent;
}

注意:除了这里,我在其他任何地方调用这个函数都没有问题。

还有:

  1. 是的,图标存在

  2. 是的,当前存在

  3. 是的, Sprite 存在

  4. current 不是指针

如果有帮助,我正在使用 QNX Momentics IDE。

编辑::这是一张图片

enter image description here

最佳答案

看起来它不是一个有效的 CCSprite。在 onEnter 的声明和调用之间,cocos2dx 使用的释放池将其标记为删除。似乎在某些情况下,在构造函数期间,CCSprite 未添加到父级,也未标记为保留。因此,它被删除了,但一些垃圾仍然存在。谢谢Cyber .

关于get 语句时 C++ 崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25270603/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com