cocos2d-x を使用して、EXC_BAD_ACCESS (code=1 ...) が code=2 になることがあります。たとえば、次のようにすると、このエラーが発生します。
std::cout << this->getChildrenCount() << std::endl;
std::cout << this->getChildrenCount() << std::endl;
この正確なコードでは、最初の行は機能しますが、2 行目でエラーが発生します。
私はすべての子に到達しようとしていたので、「ねえ、すべてのオブジェクトをこの値にフェード」のような機能を実行できました。それらは CCNode を拡張するクラス内にあるからです。
void BasicElement::fadeTo(int opacity, float duration)
{
CCActionInterval* actionTo = CCFadeTo::create(duration, opacity);
CCArray* pChildren = this->getChildren();
if (pChildren && pChildren->count() > 0)
{
CCObject* pObject = NULL;
CCARRAY_FOREACH(pChildren, pObject)
{
CCSprite* pChild = (CCSprite*) pObject;
pChild->stopAllActions();
pChild->runAction(actionTo);
}
}
}
addChild の要素を追加する独自の CCArray を既に実行しようとしましたが、同じ問題が続きます。
誰でもこれで私を助けることができますか?