21xrx.com
2025-04-10 22:54:59 Thursday
文章检索 我的文章 写文章
C++向量的使用方法
2023-07-05 06:15:39 深夜i     15     0
C++ 向量 使用方法 数据结构 STL容器

C++中的向量(vector)是一个动态数组,和数组类似,它也可以存储一系列具有相同数据类型的元素。但是相比于数组,向量具有更加灵活的大小管理和操作方式,可以在运行时根据需要动态调整大小。下面我们将介绍C++向量的使用方法以及如何充分利用它的优势。

1. 定义一个向量

定义一个向量需要包含< vector > 头文件,并使用下面的语法:

vector <数据类型> 名称;

例如定义一个包含整数类型元素的向量,可以使用以下代码:

#include <vector>
using namespace std;
vector<int> numbers;

2. 向向量中添加元素

向向量中添加元素,可以使用 push_back() 函数,例如:

numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);

将向量的第一个元素设为 10,第二个元素设为 20,第三个元素设为 30。

3. 获取向量长度

使用 size() 函数可以获取向量的长度,例如:

cout << numbers.size() << endl;

这将输出向量的长度。

4. 访问向量元素

使用下标运算符 [] 或者 at() 函数可以访问向量中的元素,例如:

cout << numbers[0] << endl; // 输出第一个元素
cout << numbers.at(1) << endl; // 输出第二个元素

如果访问超出向量范围的索引会引起运行时错误,使用 at() 函数的好处是它会进行索引边界检查,以避免此类错误。

5. 修改向量元素

可以使用下标运算符 [] 或者 at() 函数修改向量中的元素,例如将第二个元素修改为 50:

numbers[1] = 50;

6. 删除向量元素

使用 erase() 函数删除向量中的元素,例如删除第二个元素:

numbers.erase(numbers.begin() + 1); // numbers.begin() 表示第一个元素的迭代器

7. 整体清空向量

可以使用 clear() 函数清空向量中的所有元素:

numbers.clear();

向量操作的示例代码如下:

#include <iostream>
#include <vector>
using namespace std;
int main()
{
 vector<int> numbers;
 numbers.push_back(10);
 numbers.push_back(20);
 numbers.push_back(30);
 cout << "向量长度:" << numbers.size() << endl;
 cout << "第一个元素:" << numbers[0] << endl;
 cout << "第二个元素:" << numbers.at(1) << endl;
 numbers[1] = 50;
 cout << "第二个元素修改后:" << numbers[1] << endl;
 numbers.erase(numbers.begin() + 1);
 cout << "删除第二个元素后,向量长度为:" << numbers.size() << endl;
 numbers.clear();
 cout << "删除所有元素后,向量长度为:" << numbers.size() << endl;
 return 0;
}

这段代码将输出:

向量长度:3
第一个元素:10
第二个元素:20
第二个元素修改后:50
删除第二个元素后,向量长度为:2
删除所有元素后,向量长度为:0

总结:向量是一个灵活的动态数组,它可以自动管理内存,并支持标准数组的所有操作,同时还提供了许多额外的函数用于快速进行插入、删除、查找和排序等操作。掌握向量的使用方法,可以帮助我们更加高效地处理各种任务。

  
  

评论区

请求出错了