C++ 标准库(Standard Template Library, STL)是 C++ 的一个重要组成部分,它提供了一组通用的模板类和函数,用于处理数据集合。<vector>
是 STL 中的一个容器类,用于存储动态大小的数组。
<vector>
是序列容器,它允许用户在容器的末尾快速地添加或删除元素。与数组相比<vector>
提供了更多的功能,如自动调整大小、随机访问等。
主要特点
动态大小:std::vector?的大小可以在运行时动态改变。
连续存储:std::vector?中的元素在内存中连续存储,因此可以高效地访问元素(通过指针偏移)。
自动内存管理:std::vector?自动管理其内存分配和释放。
基本的语法:
声明vector:
std::vector<int> myVector;
添加元素:
myVector.push_back(10);
访问元素:
int firstElement = myVector[0];
获取元素数量:
size_t size = myVector.size();
清空vector:
myVector.clear();
示例:
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec;
// 添加元素
vec.push_back(10);
vec.push_back(20);
vec.push_back(30);
// 访问和修改元素
for (int i = 0; i < vec.size(); ++i) {
std::cout << "vec[" << i << "] = " << vec[i] << std::endl;
}
// 使用迭代器访问元素
for (std::vector<int>::iterator it = vec.begin(); it != vec.end(); ++it) {
*it += 10; // 每个元素加 10
}
// 输出修改后的元素
for (int i = 0; i < vec.size(); ++i) {
std::cout << "vec[" << i << "] = " << vec[i] << std::endl;
}
return 0;
}