参考链接: C++ : Vector删除所有指定的元素

使用vector,必须加上:#include <vector>

1.初始化vector,一般有这几种方式:

std::vector<std::wstring> v1;                //创建一个空的wstring类型的vector

std::vector<std::wstring> v2(3, L"c");       //创建一个容量为3,全部初始化L"c"

std::vector<int> v3(5);                      //创建容量为5,数据类型为int的vector

std::vector<int> v4(v3);                     //创建一个从v3拷贝过来的vector

std::vector<int> v5 = {1,2,3,4,5,6,7};       //C++11才支持,直接值初始化,最方便

第五种方法:  vector<int> v5{1,2,3.0,4,5,6,7};

v5初始化为列表中元素的拷贝,列表中元素必须与v5的元素类型相容,本例中必须是与整数类型相容的类型,整形会直接拷贝,其他类型会进行类型转换

2.在指定位置插入元素:

v2.insert(v2.begin()+4, L"3");   //在指定位置,例如在第五个元素前插入一个元素

v2.insert(v2.end(), L"3");   //在末尾插入一个元素

v2.push_back(L"9");   //在末尾插入一个元素

v2.insert(v2.begin(), L"3");   //在开头插入一个元素

3.删除数据:

v2.erase(v2.begin()); //删除开头的元素

v2.erase(v2.begin(),v2.end); //删除[begin,end]区间的元素

v2.pop_back();   //删除最后一个元素

函数                                   说明

c.assign(beg,end)            //将[beg; end)区间中的数据赋值给c。

c.assign(n,elem)             //将n个elem的拷贝赋值给c。

c.at(idx)                    //传回索引idx所指的数据,如果idx越界,抛出out_of_range。

c.back()                     //传回最后一个数据,不检查这个数据是否存在。

c.begin()                    //传回迭代器中的第一个数据地址。

c.capacity()                 //返回容器中数据个数。

c.clear()                    //移除容器中所有数据。

c.empty()                    //判断容器是否为空。

c.end()                      //指向迭代器中的最后一个数据地址。

c.erase(pos)                 //删除pos位置的数据,传回下一个数据的位置。

c.erase(beg,end)             // 删除[beg,end)区间的数据,传回下一个数据的位置。

c.front()                    //传回第一个数据。

get_allocator                //使用构造函数返回一个拷贝。

c.insert(pos,elem)           //在pos位置插入一个elem拷贝,传回新数据位置。

c.insert(pos,n,elem)         //在pos位置插入n个elem数据。无返回值。

c.insert(pos,beg,end)        //在pos位置插入在[beg,end)区间的数据。无返回值。

c.max_size()                 //返回容器中最大数据的数量。

c.pop_back()                 //删除最后一个数据。

c.push_back(elem)            //在尾部加入一个数据。

c.rbegin()                   //传回一个逆向队列的第一个数据。

c.rend()                     //传回一个逆向队列的最后一个数据的下一个位置。

c.resize(num)                //重新指定队列的长度。

c.reserve()                  //保留适当的容量。

c.size()                     //返回容器中实际数据的个数。

c1.swap(c2)                  //将c1和c2元素互换。

swap(c1,c2)                  //同上操作。

vector<Elem> c               //创建一个空的vector。

vector<Elem> c1(c2)          //复制一个vector。

vector <Elem> c(n)           //创建一个vector,含有n个数据,数据均已缺省构造产生。

vector <Elem> c(n, elem)     //创建一个含有n个elem拷贝的vector。

vector <Elem> c(beg,end)     //创建一个以[beg;end)区间的vector。

c.~ vector <Elem>()          //销毁所有数据,释放内存。

operator[]                   //返回容器中指定位置的一个引用。

[转载] C++ std::vector指定位置插入相关推荐

  1. C++std::vector指定位置插入

    C++ std::vector指定位置插入 Bird鸟人 2017-09-05 19:31:47 24070 收藏 5 最后发布:2017-09-05 19:31:47首发:2017-09-05 19 ...

  2. C++ 笔记(23)— STL vector 类(实例化 vector、末尾插入、指定位置插入、数组方式访问元素、指针方式访问元素、删除元素、大小与容量区别)

    1. vector 特点 vector 是一个模板类,提供了动态数组的通用功能,具有如下特点: 在数组末尾添加元素所需的时间是固定的,即在末尾插入元素的所需时间不随数组大小而异,在末尾删除元素也如此: ...

  3. js写入指定html,js 指定位置插入html标签(可编辑div)

    demo效果如下: html代码部分如下: js获取编辑框游标的位置 #Div1, #Div2 { width: 500px; height: 100px; border: solid 1px bla ...

  4. 指定位置插入字符串(c++insert函数、find函数使用)

    一.insert函数(插入函数) str1=str1(被插入字符串).insert(插入位置,str2(被插入字符串),n ,m) ps:n,m分别是插入字符串要截取的(真正要插入的部分)即在str2 ...

  5. python替换指定位置word图片_用Python在word的指定位置插入图片(使用Python-docx包)...

    1 2 首先,本实例是采用java语言的,需要进行xml操作,至于poi,docx4j这些,因为感觉不是文档不太好,要嘛就是操作不方便,而且英文就算了,主要是注释很少,让人云里雾里的.所以,嘿嘿,直接 ...

  6. vue 怎么在字符串中指定位置插入字符_Vue数组变更方法

    Vue 将被侦听的数组的变更方法进行了包裹,所以它们也将会触发视图更新.这些被包裹过的方法包括: push() pop() shift() unshift() splice() sort() reve ...

  7. pyghon list指定位置插入字符的方法

    #list 序列 sample_list = [1,2,3,'abc'] #dictionary 字典 sample_dic = {"key":value, 2:3} #tuple ...

  8. java pdf添加图片_java实现在pdf模板的指定位置插入图片

    本文实例为大家分享了java在pdf模板的指定位置插入图片的具体代码,供大家参考,具体内容如下 java操作pdf有个非常好用的库itextpdf,maven: com.itextpdf itextp ...

  9. java word添加图片_Java 替换word文档文字并指定位置插入图片

    先说下 需要的依赖包 org.apache.poi poi-excelant 3.12 org.apache.poi poi-scratchpad 3.12 org.apache.poi poi-oo ...

最新文章

  1. 利用OpenCV实现人眼的检测与跟踪
  2. 2020-11-18(如何打开.jar工具)
  3. Java提升篇:对象克隆(复制)
  4. android 二级列表拖动排序_Excel的数据透视表六种排序方法
  5. 泊松分布的分布函数_常见概率分布汇总
  6. 面试项目亮点_怎样在面试中更好地介绍自己的项目经验?
  7. 编译Ruby2.0 问题解决
  8. 工信部:三大运营商移动电话用户总数达15.92亿户 同比增长0.2%
  9. tensorflow项目构建流程
  10. tomcat下部署activemq(转)
  11. 体检导检系统服务器系统,喜仕达体检中心导检系统
  12. 服务器503网页报错,网页为什么出现503错误?网页503错误的解决方法
  13. 以自动化为“遮羞布”,亚马逊掩盖了惊人的工伤记录
  14. 焦点科技股份有限公司--软件测试--《社招、校招jd、公司介绍、培训发展、薪酬福利、公益慈善》整理
  15. kail详细安装教程
  16. Chrome、Edge浏览器多线程下载
  17. 金蝶K3采购暂估案例教程3差额调整
  18. 2021充电必备:推荐一些免费的电子书网站及EPUB阅读器
  19. 最新的期刊论文怎么下载?
  20. iOS -- 友盟工具进行Crash分析/dsym文件

热门文章

  1. mysql 数字处理方法_mysql中保留字段中的数字的处理方法。
  2. 5怎么用修改器_经常用电脑辐射大怎么办?这5个习惯防辐射,很多人都知道
  3. php aes java_AES php java 互转
  4. Oracle→序列、视图、索引、存储过程、存储函数、包、触发器、表分区、锁表解锁表、事务、PLSQL、备份恢复、游标
  5. php 密匙加密解密,带密匙的php加密解密示例分享
  6. Python入门--元组的创建,(),tuple()
  7. java和xampp_XAMPP和Bugfree详细教程
  8. apicloud mysql 登录_PHP+MySQL实现前台的登陆注册。
  9. [leetcode]139. 单词拆分
  10. matlab fspecial