c++ 数组(array)
数组
typeName arrayName[ayyaySize];
int ragnar[7]; //创建一个包含7个int类型的数组ragnar
创建数组的过程其实是在内存中申请了一个连续的int类型宽度的空间,用下标来代替每个元素的变量名.
赋值的方式
1.初始化数组,一个一个赋值
int ragnar[3];
ragnar[0]=1;
2.初始化数组,并全部赋值
int ragnar[3]={}; //全部赋值为0
int ragnar[3]={1,2,3};//分别赋值
int ragnar[]={1,2,3};//自动识别长度
vector
模板类vector类似于string类,也是一种动态数组.可以在运行阶段设置vector对象的长度,可在末尾附加新数据,还可以在中间插入新数据.它是new创建动态数组的替代品.实际上,vector类确实使用new和delete来管理内存,但这种工作是自动完成的.
首先,使用vector对象,必须包含头文件vector.
其次,vcetor包含在命名空间std中,因此可以使用using
编译命令/using
声明或std::vector
第三,模板使用不同的语法来支出它的存储的数据类型
第四,vector类使用不同的语法来指定元素数
vector<typeName> vt(nElem)include <vector>
using namespace std;//创建一个0长度的vector
vector<int> vi;
vector<double> vd(10); // 创建10个double类型的vector
array
array也位于名称空间std中,与数组一样,array对象的长度也是固定的,也使用栈(静态内存分配),而不是自由存储区,因此其效率与数组相同,但更方便,更安全.
array<typeName, nElem> arr;# include <array>
using namespace std;
array<int, 5> ai;
array<double, 4> ad = {1.1,1.2,1.2,1.3};
比较三者之间的区别
数组 | vector | array |
---|---|---|
访问方式 | 支持标准访问 | 支持标准访问 |
存储位置 | 堆 | 栈 |
复制 | 逐个复制 |
参考文献:
c++ Primer Plus
c++ 数组(array)相关推荐
- PIL中的Image和numpy中的数组array相互转换
PIL中的Image和numpy中的数组array相互转换 array转换成image 1 Image.fromarray(np.uint8(img)) https://www.cnblogs.com ...
- 元组Tuple、数组Array、映射Map
一.元组Tuple 元组Tuple是不同类型的值的聚集,元组的值将单个的值包含在圆括号中来构成,元组可以包含一个不同类型的元素 如 val riple = (100, "Scala" ...
- PHP删除数组(array一维)中指定的某个值 (转)
2019独角兽企业重金招聘Python工程师标准>>> PHP删除数组(array一维)中指定的某个值 PHP删除数组(array一维)中指定的某个值 根据指定的值删除: $stu ...
- php 判断类型array,判断一个变量是数组Array类型的方法_javascript技巧
在很多时候,我们都需要对一个变量进行数组类型的判断.JavaScript中如何判断一个变量是数组Array类型呢?我最近研究了一下,并分享给大家,希望能对大家有所帮助. JavaScript中检测对象 ...
- Java ArrayList和Vector、LinkedList与ArrayList、数组(Array)和列表集合(ArrayList)的区别...
ArrayList和Vector的区别 ArrayList与Vector主要从二方面来说. 一.同步性: Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的. ...
- php怎样解析数组,PHP 数组 Array 解析
官方介绍 PHP 数组实际上是一个有序的映射(map),映射是一种把多个值(values)关联到对应的多个键(keys)的类型.这种映射类型在很多方面做了优化,因此可以把它当成真正的数组(就是上面说的 ...
- C语言实现数组Array(附完整源码)
C语言实现数组Array 数组定义 实现以下18个接口 完整头文件 完整源文件 main 测试文件 数组定义 typedef struct CArray{int *array;int size;} C ...
- concat合并的数组会有顺序么_JS数组 Array
Arraydeveloper.mozilla.org JS没有真正数组,数组实际上是一种特殊的对象 创建数组的方法: let arr = [1,2,3]; // let arr = new Arra ...
- JAVA中数组Array与List互转
List<String> list = new ArrayList<String>(); String[] array = new String[10]; Set<Str ...
- Python 列表list与数组array的区别
1. 列表list与数组array的定义: 列表是由一系列按特定顺序排列的元素组成,可以将任何东西加入列表中,其中的元素之间没有任何关系: Python中的列表(list)用于顺序存储结构.它可以方便 ...
最新文章
- Python实战案例,requests模块,Python实现获取动态图表
- ABP源码分析三十四:ABP.Web.Mvc
- 程序员保值的五个关键点
- PAT甲级1041 Be Unique :[C++题解]模拟、哈希表
- CentOS yum安装MySQL5.7.20
- 函数的参数-在函数内部使用方法修改可变参数会影响外部实参
- Ubuntu 命令行修改网络配置方法
- 横向技术分析C#、C++和Java优劣
- Scratch:海龟绘图(九)
- office起动缓慢_如何解决Microsoft Outlook启动缓慢的问题
- Android 强制设置应用横屏或竖屏
- 解决win7 下面 利用docker搭建jitsi-meet测试环境局域网无法访问的问题
- EXPLAIN 使用
- 技术与市场脱钩?90%的程序员都错了!
- CASIA-HWDB2.x 数据集DGRL文件解析(python)
- 微分中的d是什么意思。
- 记录一下自己学习网络安全的过程
- Revit插件管理器永久免费使用(插件隐藏)
- MyBatis-Plus 看这一篇就够了!
- 服务器导入虚拟机,如何将VMware镜像导入VMware Player /服务器
热门文章
- Python+tkinter实现超时无键盘操作自动退出
- Python计算并可视化商品批发时商家收益和顾客节省情况
- Win10系统配置Python3.6+OpenGL环境详细步骤
- python call agilent com_python 控制Asterisk AMI接口外呼电话的例子
- arduino loar_如何使用Arduino开发板制作函数生成器(波形发生器)
- 数据结构 二叉树面试笔试编程题集
- 计算机的的打印服务,win7电脑打印机服务被强行关闭怎么办
- mysql connector开源协议_Spring Boot 集成 MariaDB Connector/J 连接 MySQL
- comsol稀物质传递_COMSOL电弧仿真
- mysql 索引未命中_联合索引命中率问题导致SQL查询效率慢的问题