C++中vector::insert函数和vector::erase函数的使用

#include<iostream>
#include<vector>
using namespace std;

int main()
{
    
    int a[] = { 1, 2, 3, 4 };
    vector<int>v(a, a + sizeof(a) / sizeof(int));
    vector<int>::iterator pos = find(v.begin(), v.end(), 2); //用find查找2所在的位置

    //vector::insert 在pos位置之前插入元素
    // 单元素(1)
    // iterator insert(iterator position, const value_type& val);
    //v.insert(pos, 2);
    // 填补(2)
    // void insert(iterator position, size_type n, const value_type& val);//n为要插入的元素数,val为要移动到插入元素的值
    //v.insert(pos, 3, 2);//在pos位置之前填补3个2
    // 范围(3)
    // template <class InputIterator>
    // void insert(iterator position, InputIterator first, InputIterator last);//指定元素范围
    //v.insert(pos, pos, pos + 2);//在pos位置之前插入pos~pos+n位置的元素


    //vector::erase   删除pos位置的数据
    //(1)单元素
    //iterator erase(iterator position);
    //v.erase(pos+2);//找到pos的位置并删除该位置的元素

    //(2)范围
    //iterator erase(iterator first, iterator last)
    v.erase(pos, pos+ 2);//找到pos的位置,删除从pos位置~pos+n位置的元素

    vector<int>::iterator it;
    for (it = v.begin(); it < v.end(); it++)
    {
        cout << ' ' << *it;
    }
    cout << endl;
    system("pause");
    return 0;
}

发布了20 篇原创文章 · 获赞 10 · 访问量 1378

猜你喜欢

转载自blog.csdn.net/JM624235197/article/details/101103231
今日推荐