将 cocos2dx 迁移到 v2.1.5

migrating cocos2dx to v2.1.5

首先,我知道这是一个过时的版本。但我真的需要一个答案。我是 iOS 和 cocos2dx 的新手,我刚得到一些旧代码,我正在尝试将 cocos2dx 更新到 v2.1.5。

我的问题是 CCMutableArray 已被弃用,取而代之的是 CCArray。我知道在最新版本中 CCArray 也已被弃用。

但我的问题是如何正确更新这部分代码而不会出现意外结果...

static CCMutableArray<CCString*>* getCsvList(string path);
CCMutableArray<GiftInfo*>* giftList;

我相信我不能像这样直接替换:

static CCArray<CCString*>* csvList(string path);
CCArray<GiftInfo*>* giftList;

谢谢。

你可以像这样使用 CCArray

static CCArray* csvList( string path );
CCArray* giftList;
CCArray* stringList;
//
//
//you can add object of CCObject class or derived from CCObject class to CCArray
//example
GiftInfo* gift = GiftInfo::create();
giftList->addObject(gift); //GiftInfo must derived from CCObject class

CCString* myString = CCString::create("new string");
stringList.addObject(myString);

//when getting value from CCArray, it will return object of CCObject, you have to cast it to your class
CCString* getValue = (CCString*)stringList.objectAtIndex( index );
GiftInfo* getGift = (GiftInfo*)giftList.objectAtIndex( index ); 

有关详细信息,请参阅 cocos2d-x 代码中的 CCArray class。

注意:最好更新到2.2.6版本而不是2.1.5版本,它是cocos2d-x 2.x系列的最新版本。