在我的游戏场景中,我从一个随着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