C++ stl容器中的【vector】

本文介绍了C++中的vector容器,包括其作为动态数组的功能、常用方法如push_back、pop_back等,以及迭代器的使用。通过实例演示了如何创建和操作vector。

 什么是vector

在 C++ 中,vector 是一个标准库容器,可用于存储和操作动态大小的数组。它包含在头文件 <vector> 中,并提供了以下常用方法:

  1. push_back(value):在 vector 尾部添加一个元素。
  2. pop_back():删除 vector 尾部的元素。
  3. size():返回 vector 中元素的数量。
  4. empty():如果 vector 中没有元素,则返回 true。
  5. clear():从 vector 中删除所有元素。
  6. at(index):返回 vector 中给定索引处的元素。
  7. front():返回 vector 中第一个元素。
  8. back():返回 vector 中最后一个元素。
  9. erase(begin, end):删除指定范围内的元素。
  10. insert(position, value):在指定位置插入一个元素。

例如,下面是一个使用 vector 存储整数的示例:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> v = {1, 2, 3};
    v.push_back(4);
    for (int i : v) {
        std::cout << i << " ";
    }
    std::cout << std::endl;
    return 0;
}

上述代码将输出:1 2 3 4。

vector的构造函数

//空构造
std::vector<int> first;                                // empty vector of ints
//创建4个整型空间的大小,并且用100初始化
std::vector<int> second(4, 100);                       // four ints with value 100
//用迭代器构造
std::vector<int> third(second.begin(), second.end());  // iterating through second
//拷贝构造
std::vector<int> fourth(third);                       // a copy of third

迭代器

        vector有两个版本的迭代器,一个是正向迭代器,一个是反向迭代器,他们的起始位置大概如上图所示。两个版本的迭代器使用方式一致

        迭代器本质是对应类型的指针,如果vector<int>,那么迭代器本质就是一个int*指针,并且对vector一定要有一个整体认知,它就是一个动态数组。

        模拟实现vector,有兴趣的小伙伴可以看看。

        cplusplus: c++学习的代码仓库

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值