Cocos2d-x中Vector使用

1、创建Vector对象

  • Vector()。默认的构造函数。

  • Vector(ssize_t capacity)。创建Vector对象,并设置容量。

  • Vector(const Vector<T> &other) 。用一个已存在的Vector对象创建另一个Vector对象,其中&other是左值引用参数传递。

  • Vector(Vector<T> &&other) 。用一个已存在的Vector对象创建另一个Vector对象,其中&&other是右值引用参数传递。

2、添加元素

向Vector对象中添加元素都必须是Ref对象指针类型,下面是总结常用的函数:

  • void pushBack(T object) 。添加一个元素,T表示Ref对象指针类型。

  • void pushBack(const Vector<T> &other)。把一个Vector对象中所有元素添加到当前Vector对象中。 

  • void insert(ssize_t index, T object) 。在指定位置插入元素,ssize_t是int类型别名。

3、移除元素

下面是总结常用的移除Vector<T>容器中元素的函数:

  • 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 ()。移除所有元素。

4、替换和交换元素

我们还可以通过下面函数对Vector容器中元素替换和交换:

  • void swap(T object1, T object2)。交换2个元素。 

  • void swap(ssize_t index1, ssize_t index2)。交换2个指定位置元素。 

  • void replace(ssize_t index, T object)。用一个对象替代指定位置元素。

5、查找操作

我们有的时候还需要操作Vector中的元素,下面是总结常用的查找函数:

  • 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)。返回指定对象的位置。

6、其它操作函数

此外还有很多操作Vector对象函数,下面是总结常用的函数:

  • ssize_t size ()。返回元素个数。 

  • ssize_t capacity()。返回Vector的容量。 

原文地址:https://www.cnblogs.com/zhangligopher/p/4033599.html