C++的vector容器

一、介绍

        C++的vector也被称为单端数组,它的数据结构与数组非常类似

一般用于在尾部进行插入和删除的操作。

二、动态扩充

       与数组不同,vector可以根据需求动态扩展。这里的动态扩展指的是它的空间大小会随着需求而增长,但并不是在原空间的基础上继续增加,而是:

        1. 找到一块的更大的空间

        2. 将原空间的数据拷贝到新空间

        3. 释放原空间

三、vector的使用

                    ※ 在使用vector时,需要添加头文件#include <vector> ※ ※

3.1 vector初始化

        vector提供几种构造函数,用于初始化。vector是一个泛型类,因此在初始化时候,需要确定自身元素的类型,也就是指定具体的泛型,如下所示:

声明 解释
vector<T> v; 默认构造函数,T为模板类型
vector<T>(v.begin(), v.end()); 将另一个向量的v[begin(), end()]区间拷贝给自身
vector<T>(int n, T elem) nelem拷贝给自身
vector<T>(const vector &v) 拷贝构造函数,将v的内容拷贝给自身
vector<string> v0;//初始化一个元素类型为string的vector对象 v0
vector<string> v1(v0.begin()+1, v0.end());//用v0的 第二个元素 到 最后一个元素 初始化v1
vector<char> v2(5, 'W');//用5个字符W初始化v2
vector<string> v3(v0);//用v0初始化v3

3.2 vector赋值

        vector的赋值通过运算符=assign函数实现:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值