-
构造函数:
vector()
:创建一个空的向量。vector(size_type n, const value_type& val)
:创建一个包含n
个元素的向量,每个元素的值为val
。vector(const vector& x)
:复制构造函数,创建一个与x
相同的向量。
-
赋值操作:
operator=
:将一个向量的元素赋值给当前向量。assign(size_type n, const value_type& val)
:将n
个值为val
的元素赋给向量。
-
元素访问:
at(size_type n)
:返回指定位置n
的元素的引用,如果索引越界会抛出异常。operator[]
:返回指定位置n
的元素的引用,不进行越界检查。
-
迭代器:
begin()
:返回指向向量第一个元素的迭代器。end()
:返回指向向量最后一个元素之后位置的迭代器。rbegin()
和rend()
:返回指向向量最后一个元素和第一个元素的逆向迭代器。
-
容量管理:
size()
:返回向量中元素的数量。resize(size_type n, value_type val)
:调整向量的大小,新元素默认值为val
。capacity()
:返回向量可以容纳的最大元素数量。empty()
:检查向量是否为空。clear()
:移除向量中的所有元素。
-
元素操作:
push_back(const value_type& val)
:在向量末尾添加一个元素。pop_back()
:移除向量末尾的元素。insert(iterator position, const value_type& val)
:在指定位置插入一个元素。erase(iterator position)
:移除指定位置的元素。erase(iterator first, iterator last)
:移除指定范围内的元素。
-
排序和搜索:
sort()
:对向量进行排序。find(iterator first, iterator last, const value_type& val)
:在向量中查找值为val
的元素。
-
交换:
swap(vector& x)
:与另一个向量交换内容。
-
数据操作:
data()
:返回指向向量内部数据的指针。