STL中vector的几种初始化方式
无参构造函数初始化
vector<char> VT;
有参数的构造函数初始化
//初始化size,但每个元素值为默认值
vector<int> abc(10); //初始化了10个默认值为0的元素
//初始化size,并且设置初始值
vector<int> cde(10,1); //初始化了10个值为1的元素
通过数组地址初始化
char va[6]={'i','+','*','(',')','#'};
std::vector<char> VT(va,va+6);
通过同类型的vector初始化
vector<int> a(5,1);
//通过a初始化
vector<int> b(a);
通过insert初始化
//insert初始化方式将同类型的迭代器对应的始末区间(左闭右开区间)内的值插入到vector中
vector<int> a(6,6);
vecot<int> b;
//将a[0]~a[2]插入到b中,b.size()由0变为3
b.insert(b.begin(), a.begin(), a.begin() + 3);
insert也可通过数组地址区间实现插入
int a[6] = {6,6,6,6,6,6};
vector<int> b;
//将a的所有元素插入到b中
b.insert(b.begin(), a, a+7);
此外,insert还可以插入m个值为n的元素
//在b开始位置处插入6个6
b.insert(b.begin(), 6, 6);
通过copy函数赋值
vector<int> a(5,1);
int a1[5] = {2,2,2,2,2};
vector<int> b(10);/*将a中元素全部拷贝到b开始的位置中,注意拷贝的区间为a.begin() ~ a.end()的左闭右开的区间*/
copy(a.begin(), a.end(), b.begin());//拷贝区间也可以是数组地址构成的区间
copy(a1, a1+5, b.begin() + 5);
STL中vector的几种初始化方式相关推荐
- STL中Vector的内存分配机制
一些好的公司校园招聘过程中(包括笔试.面试环节),经常会涉及到STL中vector的使用(主要是笔试)及其性能(面试)的分析.今天看了下相关文章,也写了几个小的测试程序跑了跑.算是总结下,希望对需要的 ...
- STL中vector、list、deque和map的区别
vector 向量 相当于一个数组 在内存中分配一块连续的内存空间进行存储.支持不指定vector大小的存储.STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capacituy( ...
- python实现单例模式的几种方式_基于Python中单例模式的几种实现方式及优化详解...
单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. ...
- Java面试题:final修饰的对象,有几种初始化方式
final修饰的对象初始化时分两种情况: 第一种:修饰成员对象时有3种初始化方式: 1,在定义变量时直接赋值 2,声明完变量后在构造方法中为其赋值 3,声明完变量后在构造代码块中为其赋值 第二种:修饰 ...
- 初始化一个java空数组_Java 数组的两种初始化方式
一.数组 1.数组中存储元素的类型是统一的,每一个元素在内存中所占用的空间大小是相同的,知道数组的首元素的内存地址,要查找的元素只要知道下标,就可以快速的计算出偏移量,通过首元素内存地址加上偏移量,就 ...
- Django中提供的6种缓存方式
由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用: 缓存,缓存将一个某个views的返回值保存至内存或者memcache中, ...
- spring 整合 mybatis 中数据源的几种配置方式
因为spring 整合mybatis的过程中, 有好几种整合方式,尤其是数据源那块,经常看到不一样的配置方式,总感觉有点乱,所以今天有空总结下. 一.采用org.mybatis.spring.mapp ...
- tp5类的属性不存在_thinkPHP5.1框架中Request类四种调用方式示例
本文实例讲述了thinkPHP5.1框架中Request类四种调用方式.分享给大家供大家参考,具体如下: 1. 传统调用 访问方式:http://127.0.0.1/demo/demo3/test?n ...
- 【温故知新】——原生js中常用的四种循环方式
一.引言 本文主要是利用一个例子,讲一下原生js中常用的四种循环方式的使用与区别: 实现效果: 在网页中弹出框输入0 网页输出"欢迎下次光临" 在网页中弹出框输入1 网页输 ...
最新文章
- 201771010111李瑞红《面向对象的程序设计》第八周实验总结
- java short to byte_java笔记 Java中byte数组与int,long,short,char间的转换
- .net multi-threads synchronization : Use Lock effective
- 为什么 wait/notify/notifyAll 在 Object 类定义而不是 Thread 类?
- 找不到QtDir变量的解决办法, 同时不需要经过编译就可以使用qt 库
- Ext1.X的CheckboxSelectionModel默认全选之后不允许编辑的BUG解决方案
- 【kafka】Kafka coordinator coordinator 原理剖析
- 矩阵的最大路径和问题
- 保存的离线网页总是自动跳转怎么办???
- Centos6 安装可视化界面
- android 合并两个图片大小,Android开始之将两张图片合并为一张图片的方法
- MMPlayer同步文件到手机应用中的方法
- CAD绘制粗略的示坡线
- 《论文写作》课堂总结
- 我教宝宝学AI (五)挖坑中成长
- 读《Google软件测试之道》笔记---SWE,SET,TE职责
- php计算用户留存,利用Python计算新增用户留存率
- USB接口Altium designer原理图PCB封装
- Linux 关机 命令
- python猫狗大战讲解_Kaggle猫狗大战图片分类项目研究
热门文章
- 循环播放背景音乐 html,js背景音乐循环播放代码(多浏览器支持)
- 石油专业:一文入门机器学习,以测井岩性分类预测为例
- [Canvas系列]Canvas绘制圆弧形状_04
- 皮尔森相关系数python
- 垂直对齐:vertical-align属性(转)
- 关于 Android P Media 的后台录音录像 UID 保护
- vs2013开发简单ATL ocx控件
- 配置java运行时环境时出现could not find java.dll
- Android Camera基本用法一
- 获得拥有互联网访问权限的应用程序的流量使用信息