初始化属性CCArray在新CCArray之后仍为NULL

时间:2015-02-10 00:06:28

标签: cocos2d-x cocos2d-x-3.0

我在私有部分的场景类属性中有

private:
CCArray* objects;

并在init我初始化

objects = new CCArray();

但是当我在下面的行中放置断点时,对象是NULL,我不知道为什么。当我拨打objects->count();时它会崩溃 为什么我不能初始化属性?

1 个答案:

答案 0 :(得分: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/