简介
向量是可以改变大小的序列容器. Container是保存相同类型数据的对象.序列容器严格按线性顺序存储元素.
Vector将元素存储在连续的内存位置,并允许使用下标operator []直接访问任何元素.与数组不同,vector可以在运行时根据需要缩小或扩展.向量的存储是自动处理的.
为了在运行时支持收缩和扩展功能,向量容器可以分配一些额外的存储空间以适应可能的增长,因此容器的实际容量大于大小.因此,与数组相比,vector可以消耗更多内存,以换取管理存储和以有效方式动态增长的能力.
零大小的向量也是有效的.在那种情况下,vector.begin()和vector.end()指向相同的位置.但是调用front()或back()的行为是未定义的.
定义
下面是来自< vector>的std :: vector的定义.头文件
template < class T, class Alloc = allocator<T> > class vector;
参数
T : 包含的元素的类型.
T可以被任何其他数据类型替换,包括用户定义的类型.
Alloc : 分配器对象的类型.
默认情况下,使用allocator类模板,该模板定义了最简单的内存分配模型,并且与值无关.
成员类型
以下成员类型可用作参数或按成员函数返回类型.
Sr.No. | 成员类型 | 定义 |
---|---|---|
1 | value_type | T(模板的第一个参数) |
2 | allocator_type | Alloc(模板的第二个参数) |
3 | reference | value_type& |
4 | const_reference | const value_type& |
5 | pointer | value_type * |
6 | const_pointer | const value_type * |
7 | iterator | 随机访问iterator到value_type |
8 | const_iterator | 随机访问迭代器到const value_type |
9 | reverse_iterator | std :: reverse_iterator< iterator> |
10 | const_reverse_iterator | std :: reverse_iterator< const_iterator> |
11 | size_type | size_t |
12 | difference_type | ptrdiff_t |
免责声明:以上内容(如有图片或视频亦包括在内)有转载其他网站资源,如有侵权请联系删除
-
设计总结|如何更好地表达活动品牌?
-
谈谈“目标思维”的落地
编辑导读:我们在做数据分析之前,一定要搞清楚需求方的目标到底是什么,要根据目标来重新定义业务方提出的问题,这就是目标思维。目标思维有多重要呢?应该如何落地呢...
-
在线教育平台竞品分析:网易云课堂vs腾讯课堂
本文从移动端出发,对当前比较热门的两款在线教育平台软件-网易云课堂和腾讯课堂进行比较和分析,不足之处还请大家多提意见。 市场分析 随着国内互联网技术的发展和移...
-
即学即用|父亲节活动的4种运营策略
-
B端产品经理和体验设计师的工作职责边界梳理
-
豆果美食电商分支用户体验报告及建议
-
数据分析师如何提高工作效率
在我们的日常工作中,提高工作效率是每个岗位都需要实现的,在工作中,面对比较凌乱的事情时,首先我们需要梳理清楚,按重要级进行开展;本文作者分享了关于...
-
2016中国云计算SaaS移动办公平台年度综合报告
-
网易大布局教育事业:网易公开课、网易云课堂和MOOC分析
-
一篇文章搞懂语音交互的来龙去脉