cocos2d-x中的CCArray(2)
来源:未知 责任编辑:责任编辑 发表时间:2013-12-01 14:15 点击:次
p>/** 通过一个正确的下标去删除元素 */
p>void removeObjectAtIndex(unsigned int index, bool bReleaseObj = true);
p>/** 通过一个数组去删除元素 */
p>void removeObjectsInArray(CCArray* otherArray);
p>/** 删除所有元素 */
p>void removeAllObjects();
p>/** 通过一个快速方式去删除元素 */
p>//快速方式就是:删除这个元素之后,将最后一个元素填充到删除位置。这样会打乱顺序,慎用
p>void fastRemoveObject(CCObject* object);
p>/** 通过一个快速方式去删除下标位置的元素 */
p>void fastRemoveObjectAtIndex(unsigned int index);
p>
p>// 重新安排内容
p>
p>/** 交换元素 */
p>void exchangeObject(CCObject* object1, CCObject* object2);
p>/** 交换制定的两下标的元素 */
p>void exchangeObjectAtIndex(unsigned int index1, unsigned int index2);
p>
p>/** 用一个对象去替换指定下标的元素 */
p>void replaceObjectAtIndex(unsigned int uIndex, CCObject* pObject, bool bReleaseObject = true);
p>
p>/** 翻转数组 */
p>void reverseObjects();
p>/* 缩小数组,让数组占用的内存符合元素的数量 */
p>void reduceMemoryFootprint();
p>
p>下面来介绍CCArrary几个可以用来偷懒的预编译:
p>
p>[cpp]
p>#define CCARRAY_FOREACH(__array__, __object__) //遍历所有元素,后面会举例
p>#define CCARRAY_FOREACH_REVERSE(__array__, __object__) //反序遍历元素
p>#define CCARRAY_VERIFY_TYPE(__array__, __type__) //判断数组元素是否属于某类对象
p>#define arrayMakeObjectsPerformSelector(pArray, func, elementType)//让数组中所有元素去执行某一个函数
p>#define arrayMakeObjectsPerformSelectorWithObject(pArray, func, pObject, elementType)//让数组中所有元素去执行某一个函数 ,带参数
p>
p>举例:
p>
p>[cpp]
p>CCArray* arr = CCArray::create();
p>
p>CCObject* pNode;
p>CCARRAY_FOREACH(arr,pNode)
p>{
p> pNode->retainCount();
p> //遍历arr数组,让每一个元素执行retainCount()函数
p>}
p>
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>