论c++中的数组,vector和array的区别及用法
2023-02-18 16:26:29 时间
hello,最近码神新学了一个单词:Cipher(暗号)周董暗号,预示刚刚过去的七夕,汪汪哭了,但是莫,码神终究是码神,秋名山的路很长,昨天晚上想了一下,stl中的vector,紧接着就连起了一系列,乘着晚上有时间来和大家讲一下,c++中的数组,vector和array的区别 话不多说,开车了:
- 数组(太简单了,不说了)
- 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,妈妈再也不用担心我数组越界了
- 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 的函数用法,跪求点赞+关注
相关文章
- PHP常用类 – 取随机字符串
- 无比详细的PHP文件缓存类详解
- PHP开发中常用设计模式
- PHP DFA算法实现敏感词过滤包 php-dfa-sensitive
- 使用 Google Breakpad 来助力解决程序崩溃
- golang刷leetcode:数据流中的中位数
- golang刷leetcode:redis布隆过滤器
- golang刷leetcode:BM79 打家劫舍(二)
- golang刷leetcode:买卖股票最佳时机
- golang刷leetcode:设计LFU缓存结构
- uber-go/dig 源码阅读
- uber-go/fx 源码分析
- go.uber.org/automaxprocs 源码分析
- mac 上学习k8s系列(52)goreplay流量录制
- mac 上学习k8s系列(53)seata-go
- golang源码分析:分布式链路追踪
- golang源码分析:gogoproto
- golang源码分析:将域名解析代理到自定义域名服务器
- golang源码分析:http代理和https代理
- golang源码分析:goreplay