后台开发:核心技术与应用实践3.3.1 vector是什么

简介:

3.3.1  vector是什么


vector是线性容器,它的元素严格按照线性序列排序,和动态数组很相似。和数组类似的是,它的元素存储在一块连续的存储空间中,这也意味着不仅可以使用迭代器(iterator)访问元素,还可以使用指针的偏移方式访问。和常规数组不一样的是,vector能够自动存储元素,可以自动增长或缩小存储空间。

vector的优点如下所述。

(1)可以使用下标访问个别的元素。

(2)迭代器可以按照不同的方式遍历容器。

(3)可以在容器的末尾增加或删除元素。

和数组相比,虽然容器在自动处理容量的大小时会消耗更多的内存,但是容器能提供和数组一样的性能,而且能很好地调整存储空间大小。

和其他标准的顺序容器相比,vector能更有效访问容器内的元素和在末尾添加和删除元素;而在其他位置添加和删除元素,vector则不及其他顺序容器,在迭代器和引用也不比lists支持的好。

容器的大小和容器的容量是有区别的,大小是指元素的个数,容量是分配的内存大小,容量一般不小于容器的大小。vector::size()返回容器的大小,vector::capacity()返回容量值,容量多于容器大小的部分用于以防容器大小的增加使用。每次重新分配内存都会很影响程序的性能,所以一般分配的容量都大于容器的大小,若要自己指定分配的容量的大小,则可以使用vector::reserve(),但是规定的值要大于size()值。

使用vector时需要包含的头文件#include<vector>。

相关文章
|
4天前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
16 1
|
7月前
|
开发工具 Android开发
Mac 安卓(Android) 配置adb路径
Mac 安卓(Android) 配置adb路径
213 0
|
4天前
|
网络协议 Shell Android开发
Android 深入学习ADB调试原理(1)
Android 深入学习ADB调试原理(1)
20 1
|
4月前
|
网络协议 Android开发 虚拟化
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
63 0
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
|
5月前
|
Android开发
[√]Android 通过adb内存监测方法
[√]Android 通过adb内存监测方法
142 1
|
8月前
|
Android开发
Android中adb设置cpu频率
Android中adb设置cpu频率
405 0
|
10月前
|
Shell Linux Android开发
Android强大的原生调试工具adb的常用命令
Android强大的原生调试工具adb的常用命令
|
10月前
|
Shell 网络安全 Android开发
【Android冷知识】adb无线连接手机
【Android冷知识】adb无线连接手机
411 0