C++ Vector基本操作详解
2024.01.17 21:23浏览量:32简介:C++标准库中的vector是一种动态数组,它可以自动管理内存。本篇文章将介绍vector的基本操作,包括创建、插入、删除、访问和修改元素等。
千帆应用开发平台“智能体Pro”全新上线 限时免费体验
面向慢思考场景,支持低代码配置的方式创建“智能体Pro”应用
立即体验
在C++中,vector是一种动态数组,可以自动管理内存。相比于静态数组,vector更加灵活,可以随时添加或删除元素。以下是vector的基本操作:
- 创建vector
#include <vector>
std::vector<int> vec; // 创建一个空的整型vector
std::vector<int> vec(10); // 创建一个初始大小为10的整型vector
std::vector<int> vec(10, 0); // 创建一个初始大小为10,所有元素都为0的整型vector
- 访问元素
可以通过下标运算符[]
访问vector中的元素。注意,下标从0开始。vec[0] = 1; // 将第一个元素设置为1
int value = vec[0]; // 获取第一个元素的值
- 插入元素
可以使用push_back()
函数在vector末尾插入元素。
还可以使用vec.push_back(2); // 在vector末尾插入一个值为2的元素
insert()
函数在指定位置插入元素。vec.insert(vec.begin() + 1, 3); // 在第二个位置插入一个值为3的元素
- 删除元素
可以使用pop_back()
函数删除vector末尾的元素。
可以使用vec.pop_back(); // 删除vector末尾的元素
erase()
函数删除指定位置的元素。vec.erase(vec.begin() + 1); // 删除第二个位置的元素
- 修改元素
可以使用下标运算符[]
或at()
函数修改指定位置的元素。注意,如果下标越界,at()
函数会抛出异常,而[]
不会。vec[0] = 4; // 将第一个元素的值修改为4
vec.at(0) = 5; // 将第一个元素的值修改为5(会抛出异常)
- 获取元素个数和容量
可以使用size()
函数获取vector中元素的个数。可以使用capacity()
函数获取vector的容量。注意,容量是指vector在重新分配内存之前可以容纳的元素个数。如果vector的大小超过了容量,vector会重新分配内存,导致时间复杂度为O(n)。因此,如果需要频繁添加元素的场景,可以使用reserve()
函数预先分配足够的内存。
```cpp
int size = vec.size(); // 获取vector中元素的个数
int capacity = vec.capacity(); // 获取vector的容量
vec.reserve(100); // 为vector预先分配足够的内存空间

发表评论
登录后可评论,请前往 登录 或 注册