vector容器

C++ vector是C++标准库中的一个动态数组容器,它可以自动调整大小以容纳更多元素。vector提供了许多有用的功能,如在末尾添加元素、删除元素、访问元素等。本文将介绍C++ vector的基本用法和一些高级特性。

  1. 引入头文件
    要使用C++ vector,首先需要引入相应的头文件:
#include <vector>
  1. 声明和初始化vector
    可以使用以下几种方式声明和初始化vector:
// 声明一个空的vector
std::vector<int> vec1;

// 声明并初始化一个具有5个元素的vector
std::vector<int> vec2(5);

// 声明并初始化一个具有5个元素的vector,所有元素都为0
std::vector<int> vec3(5, 0);

// 声明并初始化一个具有5个元素的vector,元素为{1, 2, 3, 4, 5}
std::vector<int> vec4 = {1, 2, 3, 4, 5};
  1. 访问vector元素
    可以使用下标操作符[]或at()函数访问vector中的元素。注意,下标从0开始。
// 访问第一个元素
int first_element = vec[0];

// 访问第二个元素
int second_element = vec.at(1);
  1. 修改vector大小
    可以使用resize()函数调整vector的大小。如果新大小大于当前大小,新元素将被初始化为默认值;如果新大小小于当前大小,多余的元素将被删除。
// 调整vector大小为10,新元素初始化为0
vec.resize(10);

// 调整vector大小为3,删除多余的元素
vec.resize(3);
  1. 添加和删除元素
    可以使用push_back()函数在vector末尾添加元素,使用pop_back()函数删除最后一个元素。还可以使用insert()函数在指定位置插入元素,使用erase()函数删除指定位置的元素。
// 在末尾添加一个元素
vec.push_back(42);

// 删除最后一个元素
vec.pop_back();

// 在第2个位置插入一个元素
vec.insert(vec.begin() + 1, 42);

// 删除第2个元素
vec.erase(vec.begin() + 1);
  1. 遍历vector
    可以使用范围for循环或迭代器遍历vector中的元素。
// 使用范围for循环遍历
for (int element : vec) {
    std::cout << element << " ";
}

// 使用迭代器遍历
for (auto it = vec.begin(); it != vec.end(); ++it) {
    std::cout << *it << " ";
}
  1. 排序和查找
    可以使用sort()函数对vector进行排序,使用find()函数查找指定元素。
// 对vector进行排序
std::sort(vec.begin(), vec.end());

// 查找值为42的元素
auto it = std::find(vec.begin(), vec.end(), 42);
if (it != vec.end()) {
    std::cout << "找到元素:" << *it << std::endl;
} else {
    std::cout << "未找到元素" << std::endl;
}

相关推荐

  1. vector容器

    2024-04-07 03:16:02       39 阅读
  2. vector容器(二)

    2024-04-07 03:16:02       40 阅读
  3. C++容器——vector

    2024-04-07 03:16:02       36 阅读
  4. Vector容器详解

    2024-04-07 03:16:02       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-07 03:16:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-07 03:16:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-07 03:16:02       82 阅读
  4. Python语言-面向对象

    2024-04-07 03:16:02       91 阅读

热门阅读

  1. 阿里云对象存储OSS的使用笔记

    2024-04-07 03:16:02       38 阅读
  2. centos7 安装 mysql5.7

    2024-04-07 03:16:02       45 阅读
  3. 网络工程师练习题(9)

    2024-04-07 03:16:02       43 阅读
  4. v-on内联语句

    2024-04-07 03:16:02       43 阅读
  5. 如何用python开发“跳一跳”游戏【附源码】

    2024-04-07 03:16:02       43 阅读
  6. 算法| ss 逻辑问题

    2024-04-07 03:16:02       41 阅读
  7. MATLAB下载与安装详细教程:从官方获取到成功启动

    2024-04-07 03:16:02       132 阅读
  8. 瘦身Spring Boot应用(thinJar)

    2024-04-07 03:16:02       53 阅读
  9. 如何简单理解Transformer架构

    2024-04-07 03:16:02       40 阅读
  10. .Linux基础正则表达式字符

    2024-04-07 03:16:02       46 阅读
  11. 电子电气架构——详解OTA系统的开发

    2024-04-07 03:16:02       44 阅读