1. **包含头文件**: 要使用 `std::vector`,首先需要包含 `<vector>` 头文件:
cppCopy code
#include <vector>
2. **定义和初始化**: 可以通过多种方式定义和初始化 `std::vector`,例如: - 默认构造函数:
cppCopy code
std::vector<int> vec; // 创建一个空的整型向量
- 指定初始大小和初始值:
cppCopy code
std::vector<int> vec(5, 10); // 创建一个包含5个元素,每个元素值为10的整型向量
- 利用初始化列表:
cppCopy code
std::vector<int> vec = {1, 2, 3, 4, 5}; // 创建一个包含5个元素的整型向量,并初始化为给定值
3. **访问元素**: 可以通过下标或迭代器访问 `std::vector` 中的元素:
cppCopy code
std::vector<int> vec = {1, 2, 3, 4, 5};
// 使用下标访问元素
int element1 = vec[0]; // 访问第一个元素
int element2 = vec.at(2); // 访问第三个元素
// 使用迭代器访问元素
for (auto it = vec.begin(); it != vec.end(); ++it) {
std::cout << *it << " ";
}
4. **添加和删除元素**: 可以通过 `push_back()` 添加元素到向量的末尾,通过 `pop_back()` 删除向量的最后一个元素:
cppCopy code
std::vector<int> vec = {1, 2, 3};
vec.push_back(4); // 在末尾添加元素4
vec.pop_back(); // 删除末尾的元素
5. **获取容量和大小**: 可以使用 `size()` 方法获取向量中元素的数量,使用 `capacity()` 方法获取向量的容量(即当前分配的存储空间大小):
cppCopy code
std::vector<int> vec = {1, 2, 3, 4, 5};
std::cout << "Size: " << vec.size() << std::endl; // 输出:Size: 5
std::cout << "Capacity: " << vec.capacity() << std::endl; // 输出:Capacity: 5
6. **遍历元素**: 可以使用范围-based for 循环遍历 `std::vector` 中的元素:
cppCopy code
std::vector<int> vec = {1, 2, 3, 4, 5};
for (int num : vec) {
std::cout << num << " ";
}
7. **清空和重置**: 可以使用 `clear()` 方法清空向量中的所有元素,使用 `resize()` 方法改变向量的大小并初始化元素:
cppCopy code
std::vector<int> vec = {1, 2, 3, 4, 5};
vec.clear(); // 清空向量
vec.resize(3); // 重置向量大小为3,并且多余的元素会被删除