C++11的array容器怎么使用

技术C++11的array容器怎么使用本篇内容介绍了“C++11的array容器怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,

本文介绍了“如何使用C 11的数组容器”的知识。很多人在实际案例的操作中会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

内置数组

数组是C语言中最常用的数据结构之一,但使用起来比较麻烦。一是不管理规模,二是不检查跨境操作。虽然C/C也提供了一些解决方案,但总是不够完善。例如,以下代码:

int ary[5];

memset(ary,0,sizeof(ary));

无符号整数I=0;

while(isizeof(ary)/sizeof(ary[0])){ 0

ary[I]=I;

我;

}对于元素个数,数组中的元素个数由sizeof计算,是否越界只能由程序员自己来保证。

array容器

C 11中引入了数组容器,基本解决了内置数组的问题:

std:arrayint,5 c11ary

c11 ary . fill(0);

无符号整数I=0;

while(ic11 ary . size()){ 0

c11 ary . at(I)=I;

我;

}

在这段代码中,

填充方法用于实现数据填充。

使用size方法获取数组的大小。

虽然at(i)方法实现了带越界检查的读写。

没有免费的误餐

为了了解数组容器的性能,我们编写了以下代码来测试写入效率:

DWORD begin=GetTickCount();

std:arrayint,10000 ary

//int ary[10000];

//STD :矢量元(10000,0);

STD : cout sizeof(ary)STD : endl;

for(int s=0;10000新元;s){ 0

for(int I=0;我10000;I){ 0

ary[I]=s I;

}

}

DWORD end=GetTickCount();

STD : cout end-begin STD : endl;代码分别使用数组容器、内置数组容器和向量容器进行确认,结果如下:

首先是占用空间的比较结果:数组容器和内置数组占用相同的内存空间,向量只有12字节,所以用来保存数据的真实内容应该从堆中获取。

写入速度对比:内置数组最快,向量容器次之,数组容器最慢。

但是从阵列和内置阵列的对比来看,牺牲了一些性能来换取安全性和便利性。但是向量的效率超过了数组,这是令人惊讶的。

这里介绍一下“如何使用C 11的数组容器”的内容。感谢阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/114480.html

(0)

相关推荐

  • python常用投资策略函数公式是什么

    技术python常用投资策略函数公式是什么本篇内容介绍了“python常用投资策略函数公式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔

    攻略 2021年11月26日
  • python 操作redis数据库

    技术python 操作redis数据库 python 操作redis数据库安装redis的python库
    pip install redis
    普通的redis链接操作
    import redis #

    礼包 2021年12月2日
  • 一场因OpenJDK引发的血案 之JavaFx

    技术一场因OpenJDK引发的血案 之JavaFx 一场因OpenJDK引发的血案 之JavaFxhttps://zhuanlan.zhihu.com/p/103765203
    案发现场
    最近做了个项

    礼包 2021年11月9日
  • 《小白学Unity3D》实现处理鼠标点击GameObject

    技术《小白学Unity3D》实现处理鼠标点击GameObject 《小白学Unity3D》实现处理鼠标点击GameObject实现物体点击事件
    通过对摄像机挂载Physics Raycaster组件,对

    礼包 2021年11月14日
  • 如何解决配置文件中的数据库连接串加密了问题

    技术如何解决配置文件中的数据库连接串加密了问题这篇文章主要介绍“如何解决配置文件中的数据库连接串加密了问题”,在日常操作中,相信很多人在如何解决配置文件中的数据库连接串加密了问题问题上存在疑惑,小编查阅了各式资料,整理出

    攻略 2021年10月22日
  • Eureka属性配置

    技术Eureka属性配置 Eureka属性配置一:Eureka Instance实例信息配置 里面的配置以"-"隔开 其实也支持驼峰命名代替"-"首先是入门时的配置:
    server: port: 80

    礼包 2021年10月28日