Cocos2d-x中Array的公共成员方法

unsigned int

count () const


返回数组的元素数量


unsigned int

capacity () const


返回数组的容量


unsigned int

indexOfObject (CCObject *object) const


返回指定CCObject在数组内的位置,如果不存在则返回-1;


CCObject *

objectAtIndex (unsigned int index)


根据给定位置返回一个CCObject;

如果给定的下标大于数组长度,则会报错。错误提示如下:

CCAssert(index < data->num,"index out of range in objectAtIndex()");


CCObject *

lastObject ()


返回数组最后一个CCObject


CCObject *

randomObject ()


随机返回一个数组内的CCObject,如果不改变随机种子会变成伪随机。

//随机种子

cc_timeval psv;

CCTime::gettimeofdayCocos2d( &psv,NULL ); // 计算时间种子

unsigned int tsrans = psv.tv_sec * 1000 + psv.tv_usec / 1000; // 初始化随机数

srand( tsrans );


bool

containsObject (CCObject *object) const


数组是否包含指定CCObject,返回类型为布尔值


bool

isEqualToArray (CCArray *pOtherArray)



数组是否与指定数组相等,返回类型为布尔值


void

addObject (CCObject *object)


添加一个CCObject到数组最后


void

addObjectsFromArray (CCArray *otherArray)


从数组最后添加指定数组的所有元素。


void

insertObject (CCObject *object,unsigned int index)


把指定CCObject添加到数组的指定位置


void

removeLastObject (bool bReleaseObj=true)



移除数组最后一个CCObject,默认释放内存


void

removeObject (CCObject *object,bool bReleaseObj=true)



移除指定CCObject,默认释放内存


void

removeObjectAtIndex (unsigned int index,bool bReleaseObj=true)



移除指定位置的元素,默认释放内存


void

removeObjectsInArray (CCArray *otherArray)



移除指定数组内的所有元素。


void

removeAllObjects ()



移除数组所有元素。


void

fastRemoveObject (CCObject *object)



快速移除指定CCObject。不知道与普通remove有什么区别。


void

fastRemoveObjectAtIndex (unsigned int index)



快速移除指定位置的元素。不知道与普通remove有什么区别。


void

exchangeObject (CCObject *object1,CCObject *object2)



交换数组内指定的两个CCObject的位置。


void

exchangeObjectAtIndex (unsigned int index1,unsigned int index2)



交换数组内指定位置的两个元素的位置。


void

replaceObjectAtIndex (unsigned int uIndex,CCObject *pObject,bool bReleaseObject=true)



用指定CCObject替换数组内指定位置的CCObject。默认释放内存。


void

reverseObjects ()



颠倒数组内的元素的位置。


以上部分代码来自网络。

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...