vector是C++ STL中动态数组容器,需包含头文件,支持自动内存管理与动态增删元素。可定义为空、指定大小、初值或列表初始化,还能拷贝构造。常用操作包括push_back、pop_back、size、empty、front、back、at、insert、erase等,支持下标访问与迭代器遍历,推荐使用范围for循环。内部连续存储,容量不足时自动扩容,可用reserve预分配空间以提升性能,shrink_to_fit可缩减容量。掌握vector操作有助于提高编程效率与程序稳定性。
vector 是 C++ 标准模板库(STL)中非常重要的容器之一,它提供了动态数组的功能,能够自动管理内存,支持在运行时动态添加或删除元素。相比普通数组,vector 更加灵活、安全,是日常编程中使用频率极高的数据结构。
要使用 vector,需要包含头文件 #include
vector 提供了丰富的成员函数来操作数据,以下是一些最常用的:
示例代码:
#include#include using namespace std; int main() { vector v; v.push_back(10); v.push_back(20); v.push_back(30); cout << "大小: " << v.size() << endl; cout << "第一个元素: " << v.front() << endl; cout << "最后一个元素: " << v.back() << endl; for (int i = 0; i < v.size(); ++i) { cout << v[i] << " "; } cout << endl; v.pop_back(); cout << "删除最后一个后大小: " << v.size() << endl; return 0; }
vector 支持使用迭代器遍历元素,这是 STL 容器的通用方式。
素的下一个位置示例:
for (auto it = v.begin(); it != v.end(); ++it) {
cout << *it << " ";
}
或使用范围 for 循环(推荐):
for (int x : v) {
cout << x << " ";
}
vector 内部使用连续内存存储元素,当容量不足时会自动重新分配更大的空间,并将原数据复制过去。虽然这个过程对用户透明,但频繁插入可能导致性能问题。
建议在已知元素数量时提前 reserve,提升效率。
基本上就这些。掌握 vector 的常用操作能极大提高编码效率和程序稳定性。