C++ Vector基本操作详解

作者:十万个为什么2024.01.17 21:23浏览量:32

简介:C++标准库中的vector是一种动态数组,它可以自动管理内存。本篇文章将介绍vector的基本操作,包括创建、插入、删除、访问和修改元素等。

千帆应用开发平台“智能体Pro”全新上线 限时免费体验

面向慢思考场景,支持低代码配置的方式创建“智能体Pro”应用

立即体验

在C++中,vector是一种动态数组,可以自动管理内存。相比于静态数组,vector更加灵活,可以随时添加或删除元素。以下是vector的基本操作:

  1. 创建vector
    1. #include <vector>
    2. std::vector<int> vec; // 创建一个空的整型vector
    3. std::vector<int> vec(10); // 创建一个初始大小为10的整型vector
    4. std::vector<int> vec(10, 0); // 创建一个初始大小为10,所有元素都为0的整型vector
  2. 访问元素
    可以通过下标运算符[]访问vector中的元素。注意,下标从0开始。
    1. vec[0] = 1; // 将第一个元素设置为1
    2. int value = vec[0]; // 获取第一个元素的值
  3. 插入元素
    可以使用push_back()函数在vector末尾插入元素。
    1. vec.push_back(2); // 在vector末尾插入一个值为2的元素
    还可以使用insert()函数在指定位置插入元素。
    1. vec.insert(vec.begin() + 1, 3); // 在第二个位置插入一个值为3的元素
  4. 删除元素
    可以使用pop_back()函数删除vector末尾的元素。
    1. vec.pop_back(); // 删除vector末尾的元素
    可以使用erase()函数删除指定位置的元素。
    1. vec.erase(vec.begin() + 1); // 删除第二个位置的元素
  5. 修改元素
    可以使用下标运算符[]at()函数修改指定位置的元素。注意,如果下标越界,at()函数会抛出异常,而[]不会。
    1. vec[0] = 4; // 将第一个元素的值修改为4
    2. vec.at(0) = 5; // 将第一个元素的值修改为5(会抛出异常)
  6. 获取元素个数和容量
    可以使用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预先分配足够的内存空间
article bottom image

相关文章推荐

发表评论