cocos2d-x3.0数据结构
2015-07-29 08:10
211 查看
1、cocos2d::Vector
1、头报价"CCVector.h"头文件。
2、保存的数据类型必须是cocos2d::Ref的子类。
3、实现是动态加入数据集合即链表。主要的使用方法 说明一下加入节点时,节点会被retain,删除节点时会被resase。
自己实现了内存管理
Vector<Sprite*> vector; //声明 auto sp0 = Sprite::create(); vector.pushBack(sp0); //加入节点 vector.pushBack(sp0); vector.pushBack(sp0); //工加入了三个节点 int length = vector.size(); //获取节点个数 vector.erase(vector.begin()+1); //删除第二个节点 vector.begin()为開始节点 vector.clear(); //删除全部节点
4、说明下std::vector,基本使用跟cocos2d::Vector差点儿相同,主要有以下却别,一个V大写一个v小写,td::vector引用头文件
#include "vector",只是std::vector,加入节点时不会retain,删除时也不会resase。
可是它能够存不论什么类型比方:int、string等。
2、cocos::Map
1、引用头文件"CCMap.h"头文件。
2、他们是数据key、value相应集合,key能够是随意类型,value必须是cocos2d::Ref的子类。
3、基本用法 加入节点时,value节点会被retain,删除节点时value会被resase
Map<int,Sprite*> tage; //声明 auto sp0 = Sprite::create(); tage.insert(0,sp0); //加入节点 tage.size();// 获取节点个数 (Sprite*)(tage.at(0)); //依据key获取value tage.erase(0); //依据key删除value tage.clear(); //删除全部
4、遍历全部节点
std::vector<int> mapKeyVec; mapKeyVec = tage.keys(); for(auto key : mapKeyVec) { <span style="white-space:pre"> </span>tage.at(key); }
http://blog.csdn.net/st75033562/article/details/29574939
相关文章推荐
- 数据结构
- 数据结构基础温故-5.图(中):最小生成树算法
- 数据结构和算法学习笔记-2
- 数据结构之双向链表(JAVA实现)
- 数据结构---二叉树(1)
- 数据结构实验之队列一:排队买饭 SDUT
- HDU 5316 Magician(线段树区间合并入门)
- 黑马程序员——高新技术---Java基础-集合特点和数据结构总结
- 数据结构实验之二叉树的建立与遍历 SDUT
- 数据结构实验:连通分量个数
- HDU 1277 - 全文检索
- 进程01
- 数据结构和算法学习笔记-1
- 数据结构与算法学习目录
- java数据结构
- 数据结构实验之栈二:一般算术表达式转换成后缀式 SDUT
- 数据结构与算法-抽象数据类型
- 数据结构与算法-抽象数据类型
- 步步为营(十四)常用数据结构(7)STL-Queue(队列)priority_queue(优先队列)
- 我的软考之路(四)——数据结构和算法(2)树和二叉树