Инициализираното свойство CCArray все още е NULL след нов CCArray

Имам свойство на клас сцена в частен раздел като

private:
CCArray* objects;

и в init инициализирам

objects = new CCArray();

но когато поставя точка на прекъсване в ред под обектите е NULL и не знам защо. Той се срива, когато извикам objects->count(); Защо не мога да инициализирам свойство?


person PaolaJ.    schedule 10.02.2015    source източник


Отговори (1)


сте маркирали тази публикация с cocos2d-x 3.0. Масивът е променен в cocos2d-x-3.0.

Инициализиране:

cocos2d::Vector<cocos2d::Sprite *> _bullets;

Попълване:

//   add a bullet
Sprite *bullet = Sprite::create("circle.png")
this->_bullets.pushBack(bullet);  //  retains bullet

Зацикляне:

//  loop through bullets
for (auto bullet: this->_bullets)
{
    //  do something with bullet.
    //  no need to cast in this case
    if (bullet->getPositionX() > 160)
    {
        //  ...
    }
}

Изтриване:

this->_bullets->removeObject(bullet);

Можете да прочетете всичко за това тук: http://dev.bunnyhero.org/2014/01/cocos2d-x-30-beta-the-new-vector-class/

person sanchitgulati    schedule 10.02.2015
comment
можем ли също така да итерираме през масива с елементи от менюто? ако да тогава можете ли да ми дадете един пример. - person shaqir saiyed; 03.03.2015