概念:vector和数组非常相似,但它的效率不如数组,但是vector可以方便的变大变小。

原理:并不是在原有的空间后面继续添加新的空间,而是重新找一块连续的空间,然后将原有的数据拷贝进去,再释放原有的空间。

vector 是支持随机访问的。

构造方法如下:

#include"iostream"
#include"vector"
using namespace std ;
// vector的概念 :vector和数组非常相似,但它的效率不如数组,但是vector可以方便的变大变小
// vector是如何变大和变小的?
// 并不是在原有的空间后面继续添加新的空间,而是重新找一块连续的空间,然后将原有的数据拷贝进去,再释放原有的空间。
// vector 是支持随机访问的。void printVector(vector<int> & v)
{
// 打印vectorfor(vector<int>::iterator it = v.begin();it!=v.end();it++){cout<<*it<<'\t';}cout<<endl;
}int main()
{// 创建一个vector无参构造vector<int> v;// 向这个v中插入数据for(int i=1;i<10;i++){v.push_back(i);}printVector(v);// 通过区间的方式进行构造vector<int>v2(v.begin(),v.end());printVector(v2);// n个element方式构造vector<int>v3(10,23);printVector(v3);// 拷贝构造
//  这里拷贝v3到v4vector<int>v4(v3);printVector(v4);return 0;
}

C++ Vector的概念和原理和构造相关推荐

  1. git入门:概念、原理、使用

    git和Github 概念 Git --- 版本控制工具(命令). 工具介绍官方网站:http://git-scm.com 工具下载地址:http://git-scm.com/download/ gi ...

  2. 机器学习基础图表:概念、原理、历史、趋势和算法

    四大会计师事务所之一的普华永道(PwC)发布了多份解读机器学习基础的图表,其中介绍了机器学习的基本概念.原理.历史.未来趋势和一些常见的算法.为便于读者阅读,机器之心对这些图表进行了编译和拆分,分三大 ...

  3. 学习笔记——spring5概念和原理

    文章目录 一. spring5概述和原理 Spring5 框架概述 Spring5入门案例 IOC(概念和原理) IOC(BeanFactory 接口) IOC操作 Bean 管理(概念) IOC操作 ...

  4. arduino学习中常用电机科普之直流有刷电机与无刷电机(本帖不讲程序,只讲电机原理与构造)

      由于前段在学习arduino控制一个小马达的时候,才开始接触电机,不接触不知道,一接触发现电机的种类还挺多的.搞得我晕头转向的,然后花了点时间总结了arduino常常用到的记住电机,算是做个总结, ...

  5. git概念、原理、使用

    git和Github 概念 Git --- 版本控制工具(命令). 工具介绍官方网站:http://git-scm.com 工具下载地址:http://git-scm.com/download/ gi ...

  6. 小样本学习——概念、原理与方法简介(Few-shot learning)

    Few-shot learning (FSL) 在机器学习领域具有重大意义和挑战性,是否拥有从少量样本中学习和概括的能力,是将人工智能和人类智能进行区分的明显分界点,因为人类可以仅通过一个或几个示例就 ...

  7. 《OpenCv视觉之眼》Python图像处理七 :Opencv图像处理之高通滤波和低通滤波原理及构造

    本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的.不同方法的处理,以达到对图像进行去噪.锐 ...

  8. Java应用诊断工具】「BTrace」基本概念和原理的介绍(1)

    Java应用诊断工具]「BTrace」基本概念和原理的介绍(1) 系列文章 「BTrace」基本概念和初步介绍(1) 「BTrace」安装介绍和使用原理(2)- 未完成 「BTrace」实战代码进行调 ...

  9. iOS/OS X内存管理(一):基本概念与原理

    iOS/OS X内存管理(一):基本概念与原理 发表于21小时前| 1585次阅读| 来源CSDN| 8 条评论| 作者刘耀柱 移动开发iOSObjective-C内存管理内存泄露局部变量开发经验 a ...

最新文章

  1. ORACLE SQL: 经典查询练手第二篇
  2. LPC55S69 MicroPython模组和库函数
  3. 电动双联电位器ZW1613
  4. AMS重要的数据结构解析(二):TaskRecord
  5. elasticsearch index 之 put mapping
  6. 2018年4月1日 蓝桥杯 C/C++B组答案 递增三元组
  7. 转:Java异常分类以及相应处理机制
  8. 计算机考试单招考试面试,单招计算机面试题.docx
  9. 产品经理和开发打起来了
  10. 2019 Java发展趋势报告:Java老矣,Java正年轻
  11. vscode 崩溃_太真实了!程序员崩溃的40个瞬间
  12. zk的数据一致性问题
  13. 打开.net web项目,出现Unable to get the project ile from the web server错误
  14. 云课堂智慧职教自动签到
  15. 杭电ACM-LCY算法进阶培训班-专题训练(Hash及其应用)
  16. 通过SQL注入获得网站后台用户密码
  17. 添加蒙版,分分钟搞定PPT封面
  18. AlertDialog点击确定必定会dismiss问题
  19. LeetCode 香槟塔
  20. 怎么彻底禁用Cortana小娜?

热门文章

  1. 一文了解NFT的六大交易平台
  2. 化工人员定位安全管理系统平台建设
  3. AppStore如何区分统计代理渠道来源
  4. Nginx请求转发端口转发
  5. 【制作ppt的软件】Focusky教程 | Focusky字体设置问题
  6. 大鼠半月板撕裂模型动物模型 用于评估潜在药物的疗效的有效模型
  7. 变压器励磁电感以及漏感
  8. Catia V5R21软件安装教程
  9. Pod和容器基本概念
  10. 云计算运维累不累_云计算运维工程师前景怎么样?