C++ vector:使用动态数组管理数据
2023-06-12 11:12:36
浏览数 (2805)
在 C++ 中,我们经常需要处理一些不确定长度的数据集合。而 vector 是一个非常实用的容器类,它可以让我们方便地管理动态数组,并提供了丰富的操作方法。
下面就来看看如何使用 vector 实现一些具体的功能。
1. 初始化 vector
我们可以通过以下方式来初始化一个 vector:
#include <vector>
std::vector<int> v; // 初始化一个空 vector
std::vector<int> v{1, 2, 3}; // 初始化一个包含 1、2、3 的 vector
2. 添加元素
我们可以使用 push_back() 方法向 vector 中添加元素:
std::vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
此时,v 中的元素为 {1, 2, 3}。
3. 访问元素
我们可以使用 [] 运算符或 at() 方法来访问 vector 中的元素:
std::vector<int> v{1, 2, 3};
int a = v[0]; // a = 1
int b = v.at(1); // b = 2
需要注意的是,如果使用 [] 运算符访问越界的元素,程序将会崩溃。而 at() 方法会抛出 out_of_range 异常。
4. 修改元素
我们可以直接使用 [] 运算符或 at() 方法修改 vector 中的元素:
std::vector<int> v{1, 2, 3};
v[0] = 4; // v 现在为 {4, 2, 3}
v.at(1) = 5; // v 现在为 {4, 5, 3}
5. 删除元素
我们可以使用 erase() 方法删除 vector 中的元素:
std::vector<int> v{1, 2, 3};
v.erase(v.begin() + 1); // 删除第二个元素,v 现在为 {1, 3}
需要注意的是,erase() 方法会使后面的元素往前移动一个位置。
6. 清空 vector
我们可以使用 clear() 方法清空 vector 中的元素:
std::vector<int> v{1, 2, 3};
v.clear(); // v 现在为空
7. 获取 vector 的大小
我们可以使用 size() 方法获取 vector 中元素的个数:
std::vector<int> v{1, 2, 3};
int size = v.size(); // size = 3
通过上述实例,我们可以看到 vector 提供了方便的方法来管理动态数组。它不仅可以保存基本类型,还可以保存对象、结构体等复杂数据类型。因此,在 C++ 开发中,vector 是一个非常常用的容器类。
如果您还是C++初学者,可以先来试试 C++入门课程 ,零基础也能学习C++!