-
<李>向量(向量)是一个封装了动态大小数组的顺序容器。李>
<李>向量是一个能够存放任意类型的动态数组。李>
-
<李>头文件# include & lt; vector>李>
<李>需要使用std命名空间使用名称空间性病;李>
<李>以下使用方法以int数据类型为例,使用时可自定义数据类型李>
<李>注意:下文中区间为左闭右开李>
-
<李> vector
int []={2、4、6、8、10}; vectorv(和[1],和[3]),
-
<李> v.push_back (x)向尾部增加一个元素x 李>
<李> v.insert (pos机,x)向pos地址指向元素前增加一个元素x 李>
v.insert(逆序函数(),666);//在首元素前插入元素666 v.insert(逆序函数()+ 1666);//在第二个元素前插入元素666
v.insert (pos n x)向pos地址指向元素前增加n个相同的元素x
v.insert(逆序函数(),3666);//在首元素前插入3个元素666 >之前v.insert (pos,首先,最后)向pos地址指向元素前插入另一个相同类型向量[第一,去年)间的数据
v2.begin v.insert(逆序函数()(),v2.end ());//将v2所有元素插入v1之前
-
<李> v.pop_back()删除向量中最后一个元素李>
<李> v.clear()清空向量中所有元素李>
<李> v.erase (pos)删除向量中迭代器指向元素李>
v.erase(逆序函数());//删除首元素
v.erase(第一,最后):删除向量中(去年)首先,中元素
v.erase(逆序函数()+ 1,v.end () 1);//删除第二个到倒数第二个之间的元素
-
<李> v[我]直接访问向量中元素李>
<李> v.at (pos)返回pos位置元素的值pos下标从0开始(类似数组)李>
<李> v.front()返回首元素的值李>
<李> v.back()返回尾元素的值李>
<李>逆序函数()返回向量头指针,指向第一个元素李>
<李> v.end()返回向量尾指针,指向向量最后一个元素的下一个位置李>
<李> v.rbegin()反向迭代器,指向最后一个元素李>
<李> v.rend()反向迭代器,指向第一个元素之前的位置李>
//直接遍历元素 for (int i=0; i< v.size();我+ +) { cout<& lt; v[我]& lt; & lt;“”; }//使用迭代器遍历元素 (vector
<李> v.empty()判断向量是否为空,为空返回1否则返回0 李> <李> v.size()返回向量中元素的个数李> <李> v.capacity()返回当前向量所能容纳的最大元素数量李> <李> v.max_size()返回最大可允许的矢量元素数量值李> <李> v.swap (v2)交换两个同类型向量v和v2李> <李> v.assign (n, x)把向量中第n个元素的值设为x 李> <李> v.assign(去年)首先,将向量中[第一,去年)元素设置成当前向量元素李>
//将v中元素设置为v2中元素 v2.end v.assign (v2.begin () ());<强>总结一下常用语法强>
语法 说明 vector
v; 创建空向量 v.push_back (x) 向尾部增加一个元素x v.insert (pos机,x) 向pos地址指向元素前增加一个元素x v(我) 访问我位置元素 v.pop_back () 删除向量中最后一个元素 v.clear () 清空向量中所有元素 v.empty () 判断向量是否为空 v.size () 返回向量中元素的个数 逆序函数() 返回向量头指针(迭代器),指向第一个元素 v.end () 返回向量尾指针(迭代器),指向最后一个元素+ 1位置 c++矢量动态数组的实现