Cocos2d-x学习笔记
Vector< T >数据结构
Vector< T >是cocos自己的列表数据结构,因此它能容纳的是Ref及子类的实例对象指针,其中T是模板,表示能够放入到数据结构中的类型。Vector< T >在内存管理方面不使用引用计数,它的内存管理是由编译器自动处理的,可以不考虑内存释放空间,其性能优于_Array。
创建Vector对象
Vector()
:默认的构造函数。Vector(ssize_t capacity)
:创建Vector对象,并设置容量。Vector(const Vector< T >&other)
:用一个已经存在的Vector对象创建另一个Vector对象,其中&other是左值引用参数传递。Vector(Vector< T >&&other)
:用一个已经存在的Vector对象创建另一个Vector对象,其中&&other是右值引用参数传递。
添加元素
void pushBack(T object)
:添加一个元素,T表示Ref对象指针类型。void pushBack(const Vector< T >&other)
:把一个Vector对象中的所有元素添加到Vector对象中。void insert(ssize_t index, T object)
:在指定位置插入元素。
移除元素
void popBack()
:移除最后一个元素。void eraseObject(T object, bool removeAll=false)
:移除某个元素。iterator erase(iterator position)
:指定位置移除对象,参数是迭代器,而返回值是下一个迭代器。iterator erase(iterator first, iterator last)
:指定移除对象范围(first~last),参数是迭代器,而返回值是下一个迭代器。iterator erase(ssize_t index)
:移除一个指定索引的元素,参数是ssize_t,而返回值是下一个迭代器。void clear()
:移除所有元素。
替换和交换元素
void swap(T object1, T object2)
:交换两个元素。void swap(ssize_t index1, ssize_t index2)
:交换两个指定位置的元素。void replace(ssize_t index, T object)
:用一个对象替换指定位置元素。
查找操作
iterator find( T object)
:查找Vector数据结构中的对象,返回迭代器。T at(ssize_t index)
:根据索引的位置返回Vector数据结构中的元素。T front()
:返回第一个元素。T back()
:返回最后一个元素。T getRandomObject()
:返回随机元素。bool contains(T object)
:返回某个元素是否存在该数据结构中。ssize_t getIndex(T object)
:返回指定对象的位置。
其他操作
ssize_t size()
:返回元素个数。size_t capacity()
:返回Vector的容量。