c语言中vector的用法,C++ vector使用方法

在 c++ 中,vector 是一个十分有用的容器。它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。

C++ 中数组很坑,有没有类似 Python 中 list 的数据类型呢?类似的就是 vector!vector 是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。和 string 对象一样,标准库将负责管理与存储元素相关的内存。我们把 vector 称为容器,是因为它可以包含其他对象。一个容器中的所有对象都必须是同一种类型的。

一、什么是vector?

向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。

二、容器特性

1.顺序序列

顺序容器中的元素按照严格的线性顺序排序。可以通过元素在序列中的位置访问对应的元素。

2.动态数组

支持对序列中的任意元素进行快速直接访问,甚至可以通过指针算述进行该操作。操供了在序列末尾相对快速地添加/删除元素的操作。

3.能够感知内存分配器的(Allocator-aware)

容器使用一个内存分配器对象来动态地处理它的存储需求。

三、基本函数实现

1.构造函数

​vector()​:创建一个空vector

​vector(int nSize)​:创建一个vector,元素个数为nSize

​vector(int nSize,const t& t)​:创建一个vector,元素个数为nSize,且值均为t

​vector(const vector&)​:复制构造函数

​vector(begin,end)​:复制[begin,end)区间内另一个数组的元素到vector中

2.增加函数

​void push_back(const T& x)​:向量尾部增加一个元素X

​iterator insert(iterator it,const T& x)​:向量中迭代器指向元素前增加一个元素x

​iterator insert(iterator it,int n,const T& x)​:向量中迭代器指向元素前增加n个相同的元素x

​iterator insert(iterator it,const_iterator first,const_iterator last)​:向量中迭代器指向元素前插入另一个相同类型向量的[first,last)间的数据

3.删除函数

​iterator erase(iterator it)​:删除向量中迭代器指向元素

​iterator erase(iterator first,iterator last)​:删除向量中[first,last)中元素

​void pop_back()​:删除向量中最后一个元素

​void clear()​:清空向量中所有元素

4.遍历函数

你可能感兴趣的:(c语言中vector的用法)