Post

C++ vector

C++ vector

1 基本实现

1.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 中

1.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) 间的数据

1.3 删除函数

函数功能
iterator erase(iterator it)删除向量中迭代器指向元素
iterator erase(iterator first, iterator last)删除向量中[first, last)中元素
void pop_back()删除向量中最后一个元素
void clear()清空向量中所有元素

1.4 遍历函数

函数功能
reference at(int pos)返回 pos 位置元素的引用
reference front()返回首元素的引用
reference back()返回尾元素的引用
iterator begin()返回向量头指针,指向第一个元素
iterator end()返回向量尾指针,指向向量最后一个元素的下一个位置
reverse_iterator rbegin()反向迭代器,指向最后一个元素
reverse_iterator rend()反向迭代器,指向第一个元素之前的位置

1.5 判断函数

函数功能
bool empty() const判断向量是否为空,若为空,则向量中无元素

1.6 大小函数

函数功能
int size() const返回向量中元素的个数
int capacity() const返回当前向量所能容纳的最大元素值
int max_size() const返回最大可允许的 vector 元素数量值

1.7 其他函数

函数功能
void swap(vector&)交换两个同类型向量的数据
void assign(int n, const T& x)设置向量中前 n 个元素的值为 x
void assign(const_iterator first, const_iterator last)向量中[first, last)中元素设置成当前向量元素
This post is licensed under CC BY 4.0 by the author.