vector用法

2018-06-21  本文已影响0人  可不期诺Cappuccino

vector是将元素放到动态数组中加以管理的容器,vector容器可以随机存取元素,也就是说支持·[]运算符和at方式存取。
所以vector分配的是一块连续的内存的空间。当没有连续的内存空间去插入新来的元素时,则重新分配一块更大的内存空间。将原内存空间中的数据拷贝到新的内存空间

vector在尾部添加或者删除元素非常快,在中间操作非常耗时,因为他需要移动元素。

​基本用法

front() ​返回头部元素的引用,可以当左值

back() 返回尾部元素的引用,可以当左值

push_back() 添加元素,只能尾部添加

pop_back() 删除元素,只能在尾部删除

//用法代码

vector初始化共四个构造函数
1.直接构造函数初始化
vector<int> v1;
2.拷贝构造函数初始化
vector<int> v2=v1;
3.使用部分元素初始化
vector<int> ::iterator iter1=v.begin();
vector<int> ::iterator iter2=v.end();
vector<int> v(iter1,iter2);
4.使用元素书和值初始化
vector<int> v(3,5);//三个元素,初始化为5

vector遍历方式,可以根据[]或者迭代器遍历
[]方式
at()方式
迭代器方式

vector的元素删除
erase(iterator) 删除后会返回当前迭代器的下一个位置。

vector的元素添加

 int main(int argc, const char * argv[]) {
    
    //初始化vector对象
    vector<int> v1(10);
    
    //在指定的位置插入元素10的拷贝
    v1.insert(v1.begin() + 3, 10);
    
    //在指定的位置插入3个元素11的拷贝
    v1.insert(v1.begin(), 3, 11);
    
    //遍历
    for (vector<int>::iterator it = v1.begin(); it != v1.end(); it++) {
        cout << *it << " ";
    }
    cout << endl;
    
    return 0;
}
上一篇下一篇

猜你喜欢

热点阅读