C++ vector:使用动态数组管理数据
2023-06-12 11:12:36
浏览数 (1518)
在 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++!