构造函数

构造函数的调用有四种方式:

  1. 默认构造函数(无参构造);
  2. 左闭右开区间元素拷贝给容器本身;
  3. 构造函数将n个elem拷贝给容器本身;
  4. 拷贝构造函数

代码如下:

#include <iostream>
#include <vector>using namespace std;void printV(vector<int> &v)
{for (vector<int>::iterator it = v.begin(); it < v.end(); ++it){cout<<*it<<" ";}cout<<endl;
}void test1()
{// 1. 默认构造函数(无参构造)vector<int> v1;for (int i = 0;i<5;i++){v1.push_back(i*2+1);}printV(v1);// 1 3 5 7 9 // 2. 左闭右开区间元素拷贝给容器本身vector<int> v2(v1.begin()+1, v1.end()-1);printV(v2);// 3 5 7 // 3. 构造函数将n个elem拷贝给容器本身vector<int> v3(10, 2);printV(v3);// 2 2 2 2 2 2 2 2 2 2 // 4. 拷贝构造函数vector<int> v4(v2);printV(v4);// 3 5 7
}int main(int argc, char const *argv[])
{test1();return 0;
}

赋值操作

vector数组赋值主要采用的方式是assign()函数,

#include <iostream>
#include <vector>using namespace std;void printV(vector<int> &v)
{for (vector<int>::iterator it = v.begin(); it < v.end(); ++it){cout << *it << " ";}cout << endl;
}void test1()
{vector<int> v1;for (int i = 0; i < 5; i++){v1.push_back(i * 2 + 1);}printV(v1);// 1 3 5 7 9 // 1. 直接赋值vector<int> v2;v2 = v1;printV(v2);// 1 3 5 7 9 // 2. assign()函数赋值, 左闭右开区间vector<int> v3;v3.assign(v1.begin() + 2, v1.end());printV(v3);// 5 7 9 // 3. n个elem, assign()函数的重载版本vector<int> v4;v4.assign(20, 3);printV(v4);// 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
}int main(int argc, char const *argv[])
{test1();return 0;
}

C++ STL容器vector篇(二) vector容器的构造函数与赋值操作相关推荐

  1. 【STL】string详解(string类常用的操作函数、构造函数、赋值操作、子符串的拼接、查找和替换、比较、存取、插入和删除、获取)

    目录 1. string容器 简介 2. string类常用的操作函数 3. 构造函数 4. 赋值操作 5. 字符串拼接 6. 字符串查找和替换 7. 字符串比较 8. 字符串存取 9. 字符串插入和 ...

  2. Docker容器虚拟化(二)—容器管理、仓库管理、数据管理

    2019独角兽企业重金招聘Python工程师标准>>> Docker 容器管理 启动一个容器: [root@study ~]# docker run -it centos-7-x86 ...

  3. C++ STL容器vector篇(五) vector容器常用初始化操作总结(一维/二维)

    `vector`初始化方法 一维向量 二维向量 参考 vector初始化方法 一维向量 #include <iostream> #include <vector>using n ...

  4. C++ STL容器vector篇(一) vector容器存放内置和自定义数据类型并遍历

    写在前面 存放内置数据类型 代码 存放自定义数据类型 代码 总结 写在前面 本文算是B站黑马C++课程STL-vector部分的一个总结, 包含自己的一些想法(都在代码里了). 存放内置数据类型 以i ...

  5. C++ STL容器vector篇(三) vector容器大小和数组大小, 插入和删除元素, 存储和读取元素

    vector容器的大小(capacity)和存放数据的大小(size) #include <iostream> #include <vector>using namespace ...

  6. C++ STL容器vector篇(四) vector容器交换, 预留空间

    交换数组 作用: 在数组的内存分配过大时采用swap()函数可以回收被过多分配的空间, 减少内存占用 #include <iostream> #include <vector> ...

  7. 什么是vector C++学习vector浅析

    vector浅析 一.什么是vector? 二.容器特性 1.顺序序列 2.动态数组 3.动态处理内存需求 三.基本函数实现 1.构造函数 2.增加函数 4.遍历函数 5.判断函数 6.大小函数 7. ...

  8. 【C++ STL学习之二】容器vector大总结

    一.容器vector 使用vector必须包含头文件<vector>: #include<vector> 型别vector是一个定义于namespace std内的templa ...

  9. STL容器板子(vector篇)

    一.STL的诞生 (1)长久以来,软件界一直希望建立一种可重复利用的东西 (2)C++的面向对象和泛型编程思想,日的就是复用性的提升 (3)大多情况下,数据结构和算法都未能有一套标准,导致被迫从事大量 ...

最新文章

  1. php企业网站源码安装教程,PHPSCUP企业建站系统v1.4 安装图文教程
  2. C++中随机函数rand()和srand()的用法
  3. HashSet与HashMap源代码深度剖析
  4. ❤️六W字《计算机基础知识》(三)(建议收藏)❤️
  5. Android基础知识点的整理3
  6. Latex——伪代码算法
  7. Python学习笔记(十三)文件操作函数
  8. 计算机代码大全喜欢你,微信示爱代码大全 七夕情人节微信翻译表白代码2021
  9. 在GIS中如何绘制胡焕庸线
  10. 三种方法,让WPF项目生成单文件
  11. 金彩教育:详情页产品描述怎么写
  12. Mysql中使用逗号隔开多张表生成的表实例
  13. 外媒所言非虚,苹果降价或许是真的在清库存
  14. 共享服务器与独立服务器的区别是什么?
  15. GEE学习:查询遥感影像空间分辨率
  16. Redis6客户端工具——Jedis
  17. 【密码学基础】07 分组加密工作模式
  18. Unity3d 改变场景中钢体对象重力(Physics和Physics 2D)大小方向设置
  19. html li内部水平排列,怎样使用li进行水平排列
  20. 2012-04-28

热门文章

  1. golang xorm框架对应pg数据库字段类型参照表
  2. Unity3d Shader开发(三)Pass(Fog )
  3. 泡泡提示加强版 完美支持XHTML(JavaScript)--zhuan
  4. python读取txt文件的前几行
  5. leetcode 190 python
  6. linux下./xx做了什么?
  7. java安卓图片全屏_在Android中全屏显示GIF图片(演示代码)
  8. 字符串——垂直柱状图(洛谷 P1598)
  9. 强势回归丨2021数据库大咖讲坛(第1期):数据库高可用容灾方案的实践与探索
  10. 遇见 | 大咖:对话Oracle北美数据库研发领袖,你来不来?