在我的遊戲場景中,我從一個隨着MoveBy動作隨機移動的球類生成球。我的問題是,在MoveTo動作結束後,我如何釋放球?請參閱我下面的代碼:行動後釋放新對象
//GameScene class
...
Ball *ball = new Ball(); //<----need to release this after action is over
ball->spawnBall(this);
...
//Ball class
...
void Ball::spawnBall(cocos2d::Layer *layer){
ball = Sprite::create();
layer->addChild(ball);
auto action = Sequence::create(MoveBy::create(...)), RemoveSelf::create(), null);
ball->runAction(action);
}
我想擁有它的內存(堆)的控制,因爲我發現用自動釋放(棧):
Ball ball;
ball.spawnBall(this);
某些球會隨機停止。我想他們在產卵時覆蓋了他們的記憶。
感謝
你知道嗎如果你創造e通過'create'方法,如果在完成使用之後調用'release',它會自動釋放(通過'autorelease')(因爲保留計數爲0)? – PnotNP
是的,我知道create()方法會自動發佈。但我不確定這是否解決了我的問題。你能提供一個例子嗎?謝謝 – ctapp1