论c++中的数组,vector和array的区别及用法

本文探讨了C++中数组与vector、array的区别,包括vector作为动态数组的灵活性、array在C++11中的引入以提高效率,以及两者在存储位置、适用场景和性能上的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

hello,最近码神新学了一个单词:Cipher(暗号)周董暗号,预示刚刚过去的七夕,汪汪哭了,但是莫,码神终究是码神,秋名山的路很长,昨天晚上想了一下,stl中的vector,紧接着就连起了一系列,乘着晚上有时间来和大家讲一下,c++中的数组,vector和array的区别
话不多说,开车了:

  1. 数组(太简单了,不说了)
  2. vector
    首先vector 是向量类型,它可以容纳许多类型的数据,如若干个整数,所以称其为容器。vector 是C++ STL的一个重要成员,使用它时需要包含头文件:#include; 当然也可以简单理解为vector是一种动态数组
#include<iostream>
#include<vector>
using namespace std;
int main()
{
	vector<int> vi;
	int n;
	cin>>n;
	vector<double> vd(n);
	return 0;
}

其中vi是一个vector int 对象,vd是一个vector的对象。
因为vector对象在你插入或添加值时自动改变长度,因此可以将vi的初始长度定义为0,妈妈再也不用担心我数组越界了

  1. array
    前面我们讲到vector类的功能比较强大,但是付出的代价就是效率低下,如果知道数据的具体大小又害怕越界等,c++11中提出了array,先上代码
#include<iostream>
#include<array>
using namespace std;
int main()
{
	array<int,5> ai;
	return 0;
}

总结:
1.十分有把握的简单数据我还是推荐用数组
2.c++11才支持array
3.不追求效率的情况下可以用vector,方便
4.array和数组储存在栈中,而vector存在堆中
5.由于array是对象之间的,故可以将一个array的对象赋值给另一个array对象

如果感觉码神写的还不错,欢迎加关注,再肝array 和 vector 的函数用法,跪求点赞+关注

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋名山码民

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值