欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vector的常见用法

程序员文章站 2022-03-23 09:19:18
...

这vector就好比链表;

#include <bits/stdc++.h>
using namespace std;

int main()
{
    vector<int> v;//初始化
    vector<int> v1(10);//初始化,且指定空间元素有10个,后面不能有插入等会扩充空间的操作,实践证明会报错
    vector<int> v2(10,9);//初始化,且指定有10个值为9的元素

    for(int i=0;i<10;i++)
        cout<<v2[i];//已知有10个元素,可以用for循环下标访问
    cout<<endl;
    v2[3]=0;//可以当数组用
    vector<int>::iterator it;//也可以用迭代器访问,取名为it
    for(it=v2.begin();it!=v2.end();it++)//begin(),end()返回的是迭代器
        cout<<*it;

    //可以当链表用
    v.push_back(0);//尾部元素扩张,v[0]=0;
    v.push_back(1);//v[1]=1;
    v.push_back(2);//v[2]=2;
    v.insert(v.begin()+2,5);//由于v没有指定空间大小,所以在v[2]前面可以插入5,此时v[2]=5,v[3]=2;
    v.erase(v.begin()+1);//删除v[1],删除后后面的元素往前进一位
    vector<int> v3(10,9);
    v3.erase(v3.begin()+2,v3.begin()+5);//删除v3[2],v3[3],v4[4];
    v.clear();//删除所有元素
    cout<<"\nempty:"<<v.empty();//判断是否为空
    //倒序输出
    cout<<endl;
    for(int i=0;i<10;i++)
        cout<<v2[i];
    cout<<endl;
    reverse(v2.begin(),v2.end());
    for(int i=0;i<10;i++)
        cout<<v2[i];
    return 0;
}
相关标签: vector