C++STL中的vector简要介绍

来源:互联网 发布:java第十版基础篇答案 编辑:程序博客网 时间:2024/05/01 19:05

目录:

  • vector
    • 向量简介
    • 向量作为参数传递
    • 向量常用方法

vector

1.向量简介

  • 提出背景:数组长度一般是早已经定好了的,无法应对长度增加的情况。而动态分配的数组虽然可以解决长度增长,但却需要使用者自行管理存储空间。

  • 数组和向量的主要特征:都能通过下标以O(1)时间访问其中元素。vector的使用与数组并无差异。
  • 优势:查找
  • 劣势:插入和删除需要O(n)的时间。

  • vector 其实是只增不减的,减的是size,capacity是不减的,这样主要是为了提高效率。

2.向量作为参数传递

  1. 引用方式(vector& v) : 类似于传数组地址。
  2. 常量引用方式(const vector& v)
  3. 直接复制传递(vector v) : 会在函数中生成一个副本,最好不要用这个。

3.向量常用方法:

    vector<int> v;    int item;    ierator it;    v.push_back(item);  //末尾插入    v.pop_back();       //末尾删除    v.insert(it,item);  //任意插入    v.erase(it);        //任意删除    v.begin();          //头迭代器    v.end();            //尾迭代器    v.at(i);            //v[i]的引用    v.front();          //头元素的引用    v.back();           //尾元素的引用    v.clear();    v.empty();          v.size();   
原创粉丝点击