vector 是 C++ STL 中的一种序列容器,用于存储一系列元素,其中元素的存储是连续的。它提供了一系列丰富的操作,包括:
- 构造和析构:
vector<T> v;:创建一个空的vector。vector<T> v(n);:创建一个包含n个元素的vector,每个元素都默认初始化。vector<T> v(n, value);:创建一个包含n个元素的vector,每个元素都初始化为value。vector<T> v(begin, end);:创建一个vector,并用迭代器begin和end指定的范围内的元素初始化它。vector<T> v(other_vector);:创建一个vector,它是other_vector的副本。v.~vector();:销毁vector,释放所有分配的资源。
- 容量操作:
v.empty();:检查vector是否为空。v.size();:返回vector中元素的个数。v.max_size();:返回vector可以容纳的最大元素数。v.reserve(n);:为vector分配至少能容纳n个元素的空间。v.shrink_to_fit();:请求减少vector的容量以匹配当前大小。
- 元素访问:
v[index];:返回索引index处的元素的引用。v.at(index);:返回索引index处的元素的引用,如果索引越界,则抛出std::out_of_range异常。v.front();:返回vector中第一个元素的引用。v.back();:返回vector中最后一个元素的引用。
- 修改操作:
v.assign(n, value);:用n个value替换vector中的所有元素。v.assign(begin, end);:用迭代器begin和end指定的范围内的元素替换vector中的所有元素。v.push_back(value);:在vector的末尾添加一个value。v.pop_back();:删除vector末尾的元素。v.insert(iterator position, value);:在迭代器position指定的位置插入一个value。v.insert(iterator position, n, value);:在迭代器position指定的位置插入n个value。v.insert(iterator position, begin, end);:在迭代器position指定的位置插入迭代器begin和end指定的范围内的元素。v.erase(iterator position);:删除迭代器position指定的位置上的元素。v.erase(iterator first, iterator last);:删除迭代器first和last指定的范围内的元素。v.clear();:删除vector中的所有元素。v.resize(n);:调整vector的大小,使其包含n个元素。v.resize(n, value);:调整vector的大小,使其包含n个元素,新元素默认初始化为value。
- 迭代器操作:
v.begin();:返回指向vector中第一个元素的迭代器。v.end();:返回指向vector中最后一个元素之后位置的迭代器。v.rbegin();:返回指向vector中最后一个元素的逆向迭代器。v.rend();:返回指向vector中第一个元素之前位置的逆向迭代器。
- 比较操作:
v1 == v2;:比较两个vector是否相等。v1 != v2;:比较两个vector是否不相等。v1 < v2;:比较v1是否小于v2。v1 > v2;:比较v1是否大于v2。v1 <= v2;:比较v1是否小于或等于v2。v1 >= v2;:比较v1是否大于或等于v2。
这些操作使得 vector 成为一种非常灵活和强大的数据结构,适用于各种需要动态数组操作的场合。

2617

被折叠的 条评论
为什么被折叠?



