当前位置:首页 C++ > 正文

c++中vector的用法详解

作者:野牛程序员:2023-07-15 18:59:21 C++阅读 2780

在C++中,vector是一个非常常用的容器类,用于存储和管理动态大小的数组。它提供了许多有用的方法和功能,可以方便地操作和访问数组元素。下面是关于vector的详细说明和用法:

包含头文件:在使用vector之前,需要包含头文件<vector>

#include <vector>

定义和初始化:可以使用不同的方式来定义和初始化vector

// 默认初始化一个空的vector
std::vector<int> myVector;

// 初始化一个具有固定大小的vector,所有元素为0
std::vector<int> myVector(5);

// 初始化一个具有固定大小的vector,并为所有元素指定初始值
std::vector<int> myVector(5, 10); // 所有元素都是10

// 初始化一个vector并赋值
std::vector<int> myVector = {1, 2, 3, 4, 5};

// 从另一个vector进行初始化
std::vector<int> anotherVector(myVector);

访问元素:可以使用下标操作符[]at()方法来访问vector中的元素。

std::vector<int> myVector = {1, 2, 3, 4, 5};

// 使用下标操作符
int firstElement = myVector[0]; // 1
int secondElement = myVector[1]; // 2

// 使用at()方法
int thirdElement = myVector.at(2); // 3
int fourthElement = myVector.at(3); // 4

请注意,使用下标操作符访问元素时,如果指定的索引超出了vector的范围,将导致未定义的行为。而使用at()方法访问元素时,如果索引超出范围,将引发std::out_of_range异常。

添加和删除元素:vector提供了几种方法来添加和删除元素。

std::vector<int> myVector = {1, 2, 3};

// 添加元素到末尾
myVector.push_back(4);

// 在指定位置插入元素
myVector.insert(myVector.begin() + 2, 5); // 在索引2的位置插入5

// 删除末尾的元素
myVector.pop_back();

// 删除指定位置的元素
myVector.erase(myVector.begin() + 1); // 删除索引1的元素

获取容器大小:可以使用size()方法获取vector中元素的数量。

std::vector<int> myVector = {1, 2, 3, 4, 5};
int size = myVector.size(); // 5

遍历vector:可以使用循环来遍历vector中的元素。

std::vector<int> myVector = {1, 2, 3, 4, 5};

// 使用普通for循环
for (size_t i = 0; i < myVector.size(); ++i) {
    std::cout << myVector[i] << " ";
}

// 使用范围for循环(C++11及更高版本)
for (const auto& element : myVector) {
    std::cout << element << " ";
}

其他常用方法和功能:

  • empty(): 检查vector是否为空。

  • clear(): 清空vector中的所有元素。

  • front(): 返回vector中第一个元素的引用。

  • back(): 返回vector中最后一个元素的引用。

  • resize(): 改变vector的大小。

  • swap(): 交换两个vector的内容。

这只是vector类的一些基本用法和功能,它还提供了许多其他方法和操作,可以根据需要进行深入学习和使用。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击