功能 | 函数原型 | 说明 |
构造函数 | 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中 | |
属性 | bool empty() const; | 判断向量是否为空,若为空,则向量中无元素 |
int size() const; | 返回向量中元素的个数 | |
int capacity() const; | 返回当前向量所能容纳的最大元素值 | |
int max_size() const; | 返回最大可允许的vector元素数量值 | |
访问元素 | [] |
|
reference at(int pos); | 返回pos位置元素的引用 | |
reference front(); | 返回首元素的引用 | |
reference back(); | 返回尾元素的引用 | |
插入 | void push_back(const T& x); | 在vector尾部增加一个元素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); | 迭代器指向的元素前插入另一个相同类型vector的[first,last)间的数据 | |
删除 | iterator erase(iterator it); | 删除向量中迭代器指向的元素 |
iterator erase(iterator first,iterator last); | 删除向量中[first,last)间的元素 | |
void pop_back(); | 删除向量中最后一个元素 | |
void clear(); | 清空向量中所有元素 | |
迭代器 | iterator begin(); | 返回向量头指针,指向第一个元素 |
iterator end(); | 返回向量尾指针,指向向量最后一个元素的下一个位置 | |
reverse_iterator rbegin(); | 反向迭代器,指向最后一个元素 | |
reverse_iterator rend(); | 反向迭代器,指向第一个元素之前的位置 | |
交换 | void swap(vector&); | 交换两个同类型向量的数据 |
赋值 | void assign(int n,const T& x); | 设置向量中第n个元素的值为x |
void assign(const_iterator first,const_iterator last); | 向量中[first,last)中元素设置成当前向量元素 | |
算法 | reverse(vec.begin(),vec.end()); | 将元素翻转 |
sort(vec.begin(),vec.end()); | 默认是按升序排列,即从小到大。可以通过重写排序比较函数按照降序比较:定义排序比较函数: bool Comp(const int &a,const int &b) { return a>b; } 调用:sort(vec.begin(),vec.end(),Comp) |
C++学习:vector用法
最新推荐文章于 2022-07-05 12:06:31 发布