1
我創建瞭如下的對象池。Cocos2d-x對象池
void Arrow::CreatePools(cocos2d::Layer *layer)
{
Sprite * sprite;
int i;
//--CREATE ENEMY OBJECT POOL--//
enemyPool = new Vector<Sprite*>(MAX_ENEMY_NUMBER);
enemyIndex = 0;
for (i = 0; i < MAX_ENEMY_NUMBER; i++) {
sprite = Sprite::create("Enemy.png");
sprite->setVisible(false);
layer->addChild(sprite);
enemyPool->pushBack(sprite);
}
當我嘗試從池中拉對象時,椰樹給出了這個錯誤; {return static_cast<size_type>(this->__end_ - this->__begin_);}
我的對象拉動方法如下。
auto enemy = enemyPool->at(enemyIndex);
enemyIndex++;
if (enemyIndex == enemyPool->size())
enemyIndex = 0;
enemy->stopAllActions();
enemy->setPosition(myStartPoint);
enemy->runAction(myAction);
enemy->setVisible(true);
哪條語句導致異常? – trojanfoe
CreatePools方法正在工作,但我不能從池中拉對象。當我調用創建敵方法程序崩潰並且cocos庫顯示這個{return static_cast(this - > __ end_ - this - > __ begin_);} –