1

我正在使用 cocos2d-2.0-rc2-x-2.0.1 @ Jun 29 2012 并写了这个

。H

...
protected:
CCArray *array;
...

.cpp

...
bool HelloWorld::init()
{
...
array= CCArray::create(2);
array->addObject(obj1);
array->addObject(obj2);
...
}

void HelloWorld::ccTouchesBegan(CCSet* touches, CCEvent* event)
{
    CCLog("%i", array->count());
}
...

并得到了这个:0xC0000005:访问冲突读取位置“0xfeeefeee”。

CCArray.cpp

unsigned int CCArray::count()
{
    return data->num;
}

请帮忙。

4

2 回答 2

4

试着打电话

    array->retain() 

创建后。离开函数后,数组可能会自动释放。

但别忘了在完成后释放它。

于 2012-07-13T03:55:42.137 回答
0

你也可以这样做:

array = new CCArray();
array->initWithCapacity(3);

create()返回一个autoreleaseCCObject。

于 2013-02-11T05:05:16.607 回答