开发手册 欢迎您!
软件开发者资料库

C ++库 -<vector>

C ++&lt;vector&gt;库 - 从基本概念到高级概念,从简单而简单的步骤学习C ++算法库,其中包括C ++标准库和标准模板库(STL),涵盖所有内置类和函数。所有C ++容器,算法,函数,类,常量和头文件都使用非常容易理解的示例进行了详细解释,fstream,iomanip,ios,iosfwd,iostream,istream,ostream,sstream,streambuf,atomic,complex,exception ,功能,限制,区域设置,内存,新,数字,正则表达式,stdexcept,字符串,线程,元组,typeinfo,实用程序,valarray,数组,bitset,deque,转发列表,列表,地图,队列,设置,堆栈,无序地图,无序集,向量,算法,迭代器。

简介

向量是可以改变大小的序列容器. Container是保存相同类型数据的对象.序列容器严格按线性顺序存储元素.

Vector将元素存储在连续的内存位置,并允许使用下标operator []直接访问任何元素.与数组不同,vector可以在运行时根据需要缩小或扩展.向量的存储是自动处理的.

为了在运行时支持收缩和扩展功能,向量容器可以分配一些额外的存储空间以适应可能的增长,因此容器的实际容量大于大小.因此,与数组相比,vector可以消耗更多内存,以换取管理存储和以有效方式动态增长的能力.

零大小的向量也是有效的.在那种情况下,vector.begin()和vector.end()指向相同的位置.但是调用front()或back()的行为是未定义的.

定义

下面是来自< vector>的std :: vector的定义.头文件

template < class T, class Alloc = allocator > class vector;

参数

  • T : 包含的元素的类型.

    T可以被任何其他数据类型替换,包括用户定义的类型.

  • Alloc : 分配器对象的类型.

    默认情况下,使用allocator类模板,该模板定义了最简单的内存分配模型,并且与值无关.

成员类型

以下成员类型可用作参数或按成员函数返回类型.

Sr.No.成员类型定义
1value_typeT(模板的第一个参数)
2allocator_typeAlloc(模板的第二个参数)
3referencevalue_type&
4const_referenceconst value_type&
5pointervalue_type *
6const_pointerconst value_type *
7iterator随机访问iterator到value_type
8const_iterator随机访问迭代器到const value_type
9reverse_iteratorstd :: reverse_iterator< iterator>
10const_reverse_iteratorstd :: reverse_iterator< const_iterator>
11size_typesize_t
12difference_typeptrdiff_t