Cocos2dx 3.3中CCArray的替换方法是什么?

时间:2014-11-19 04:59:36

标签: c++ ios iphone cocos2d-x cocos2d-x-3.0

我有一个在cocos2dx 2.2.3中开发的游戏,现在我想用cocos2dx转换这个游戏3.3

最新版本,但我找不到更换CCArray。

我在读一些关于矢量的教程但我不知道如何使用它。任何更好的方法或请告诉我如何使用矢量而不是CCArray。

我的Cocos2d 2.2.3 CCArray的编码低于类型

objectArray->CCArray::create();

objectArray->addObject(CCStringMake("1.png"));
objectArray->addObject(CCStringMake("2.png"));
objectArray->addObject(CCStringMake("3.png"));
objectArray->addObject(CCStringMake("4.png"));
objectArray->addObject(CCStringMake("5.png"));
objectArray->addObject(CCStringMake("6.png"));
objectArray->addObject(CCStringMake("7.png"));
objectArray->addObject(CCStringMake("8.png"));
objectArray->addObject(CCStringMake("9.png"));
objectArray->addObject(CCStringMake("10.png"));

objectArray->retain();

如何在Vector中转换上面的代码或者为cocos2dx3.3转换任何代替方法?请告诉我。

2 个答案:

答案 0 :(得分:1)

<。>在.h文件中使用向量

声明数组
cocos2d::Vector<cocos2d::Sprite *>objectArray;
<。>在.m文件中使用下面的代码添加对象

objectArray.pushBack(sprite);

用于或使用for perticuler访问对象 objectArray.at(2);

for(auto str: objectArray)
{
   Sprite *sprite21 = dynamic_cast<Sprite *>(str);
}

答案 1 :(得分:0)

Vector<String> frames;
frames.pushBack("data1");
frames.pushBack("data2");

for(auto sp : frames)
{

}