C++ vector学习笔记

目录

Vector概述

Vector的创建

Vector的定义

调用Vector中的元素

总结


Vector概述

vector是C++中的一个容器,它可以创建一个可以自动扩容的数组

Vector的创建

正常情况下,我们会用这两种方式创建数组

int p[100]; //传统数组,创建时数组大小已经决定

int n;
cin >> n;
int* p = new int[n];//动态创建数组,需要手动输入n来决定数组的初始大小

 如果既不想限制数组大小,又不想手动输入,我们通常会使用到vector容器

#include <iostream>
#include <vector> //需要包含此头文件
void main(){
std::vector<int> p; //创建了一个可以自动扩容的数组,用p命名
p.push_back(2); //push_back为向数组中添加值
p.push_back(6);
p.push_back(13);
p.push_back(9);
std::cout << p[0] << " " << p[2]; //输入p数组内下标为0和2的值
}

Vector的定义

template <typename T>
class Vector{
private:
    T *data;
}

vector类似于此类的定义

可以存储任意类型的元素

#include <vector> //需要包含此头文件
#include <iostream>
void main(){
std::vector<int> p; //创建了一个可以自动扩容的数组,用p命名
p.push_back(2.1); 
p.push_back(6.2);
p.push_back(13.33);
p.push_back(9.66);
}

注意:模板定义之后只能向数组内插入同一类型的数据,若插入不同类型数据会报错

std::vector<int> p; 
p.push_back(2); 
p.push_back(6.33);//不会报错,因为第二行指定的是整形数组,但是此时插入的元素是6而不是6.33
p.push_back("Tom");//报错!!! string类型的数据无法插入int型数组中

调用Vector中的元素

#include <vector> //需要包含此头文件
#include <iostream>
using namespace std;
void main(){
vector<int> p = {2, 3, 15, 8, 7}; 
p[0] = 7; //访问下标为0的元素,改为7 
p.push_back(20); //添加一个元素
cout << p[0] + p[5] << endl; 
cout << p.size() << endl; //输出数组的大小
}

总结

本文解释了vector容器的定义及创建,以及它的使用和注意事项,之后会继续总结迭代器和STL算法,敬请期待

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值