c++矢量动态数组的实现

  


  

  
      <李>向量(向量)是一个封装了动态大小数组的顺序容器。   <李>向量是一个能够存放任意类型的动态数组。   
  


  

  
      <李>头文件# include & lt; vector>李   <李>需要使用std命名空间使用名称空间性病;李   <李>以下使用方法以int数据类型为例,使用时可自定义数据类型李   <李>注意:下文中区间为左闭右开李   
  

  
      <李> vectorv;李创建一个空向量   <李> vectorv (5);创建一个向量,元素个数为5李   <李> vectorv (5);创建一个元素个数为5且每个元素的值均为10的向量李   <李> vectorv2 (v1);复制另一个向量使v2与v1相等李   <李> vectorv(开始、结束);复制[开始、结束)区间内另一个数组的元素到向量中李   
        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 () ());      

<强>总结一下常用语法
  

  

           语法   说明               vectorv;   创建空向量         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++矢量动态数组的实现