通过一天的时间看Vector,其实Cocos的Vector跟C++的区别在于前者可以自动释放空间,后者需要自行手动释放。下面来为大家介绍一下Vector的用法吧。Vector<T>它是一个模板类,就是一个动态数组,只不过Vector功能更为强大,所以我们经常用它来在程序中使用。尖括号里<>,是数据类型,那我们想添加一个Layer或者Sprite这种指针类型的变量,格式就是:Vector<Sprite *> 对象名称;
在创建完一个对象后,我们就要根据我们的需要,来添加、删除、替换等操作。添加的方法有:void pushback(T Object);在最后一个元素之后添加元素,void pushBack(const Vector<T> &other)。把一个Vector对象中所有元素添加到当前Vector对象中。 而删除则是用void popback();移除最后一个元素。还有交换的方法:void swap(元素1,元素2); void swap(位序1,位序2);void replace(位序,元素);(用一个位序来替换指定位置的元素)
我们往往通过一个for循环来实现添加。.cpp代码如下:
this->v=Vector<数据类型>(数据规模);
for(int i=0;i<数据规模;i++)
{
//初始化操作
this->v.pushback(数据类型);//添加对象
this->addchild();
}
//循环遍历v对象容器
for(const auto &sprite :this->v)
{
int x=数字;
int y=数字;
v->setPosition(x,y);
this->removeChild(v);
this->addChild(v);
}
以上就是Vector的基本用法。