allyMonserはCCSprite(継承)です。スケジュールを使用すると、allyMonsterにNULLなりaction()ます。しかし、私がaction()直接電話するときは、そうでallyMonsterはありませんNULL、それは正常です。
このコードを実行すると、ログに次のように表示されます。
1, 0x23ds566
2, 0xfffffff
理由を知りたい1, 0x23ds566-> 2, 0xfffffff。なぜ変わるのですか?
void AMS_Moving::runAction()
{
allyMonster->unscheduleAllSelectors();
allyMonster->stopAllActions();
allyMonster->schedule( schedule_selector( AMS_Moving::action ) );
CCLog("1. %x", allyMonster);
}
void AMS_Moving::action()
{
CCLog("2. %x", allyMonster);
...
...
}