一、大概区别

就像指针的数组和数组的指针一样耐人寻味

//array首先向右结合,所以这个相当于 (int&)array[] array是个数组,其中的元素是引用
//应该叫:引用的数组
int &array[]
//array首先和&结合,所以array是引用,引用的对象是数组
//应该叫作数组的引用
int (&array)[10] 

二、引用的数组

首先,可以明确的说明,引用的数组是不能当函数的参数的。再者要说明,这种方式是非法的。

原因:从引用的本质说吧

首先,引用必须被初始化,这没得说,而数组并不能被另一个数组初始化或被另一个数组赋值这是其一,并且其中的每一个引用,你没有办法给他一下子初始化。

再次,引用它不支持传统意义的复制,它不占用新的空间

再再次,他没有意义,它可以用指针数组实现,完全可以代替

int i,j;
int *a[5] = {&i, &j};
a[0]; // point to i
a[1]; // point to j

再再再次,不好实现,因为编译器不知道应该分多大的内存给引用的数组。

三、数组的引用

如果不好理解,可以这样理解(从网上看到的)

int n3[3] = {2, 4, 6};
int (&rn3)[3] = n3;     //数组的引用

四、数组的引用的应用

void Test(int (&array)[5])
{cout << "size:" << sizeof(array) << endl;for (int i = 0; i < sizeof(array)/4; i++){cout << array[i] << " ";}
}
int main()
{int  array[5] = {1,2,3,4,5};Test(array);return 0;
}

out:

size:20

1 2 3 4 5

关于数组的引用和引用的数组相关推荐

  1. 实验十——一维数组的定义及引用

    1.本次课学习到的知识点: (1):一维数组的定义与引用:定义一个数组,需要明确数组变量名,数组元素的类型和数组的大小. (2):一堆数组定义的一般定义. 本次课的学习重点是比以往的更复杂的数据类型, ...

  2. c语言向自定数组_C语言一维数组的定义和引用

    C语言一维数组的定义和引用 C语言支持一维数组和多维数组.如果一个数组的所有元素都不是数组,那么该数组称为一维数组. 一维数组的定义方式 在C语言中使用数组必须先进行定义.一维数组的定义方式为: 类型 ...

  3. 多维数组元素的下标引用与指针访问

    在这儿值介绍二维数组元素的访问方式,三维.四维--的与之类似. 先用一维数组的相关知识来抛砖 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h ...

  4. 【JavaScript笔记 · 基础篇(五)】Array全家桶(引用数据类型中的数组 / Array对象 / Array.prototype)

    文章目录 一. 引用数据类型中的数组 1.1 概述 1.2 初始化 1.2.1 字面量 1.2.2 构造函数模式 1.3 访问 1.4 length属性 1.5 数组遍历 1.6 类数组对象 1.6. ...

  5. ##二维数组指针的解引用

    ##二维数组指针的解引用 方法: int (*p)[5]; //定义一个二维数组指针,它的元素是一个包含5个int类型的一维数组 int array[3][5]; p = array; //指针指向二 ...

  6. Nwafu-Oj-1444 Problem l C语言实习题七——2.结构体数组的定义与引用

    问题 : C语言实习题七--2.结构体数组的定义与引用 时间限制: 1 Sec  内存限制: 128 MB 提交: 4459  解决: 2011 [提交][状态][讨论版] 题目描述 定义一个职工结构 ...

  7. 面试中常被问到(四)C/C++中数组,指针和引用的区别

    C/C++中数组,指针和引用的区别 数组和指针: 数组 指针 保存数据 保存数据地址 可直接访问元素的值 间接访问(首先获取指针内容作为地址,通过寻址找到元素的值) 一般大小固定,数据类型相同 一般用 ...

  8. C语言 二维数组的定义、初始化以及数组元素的引用

    二维数组定义的一般形式为: 类型说明符 数组名[常量表达式 ][常量表达式] 例如:float a[3][4],b[5][10]; 是定义a为3行4列的数组,b为5行10列的数组. 注意不可以写成fl ...

  9. c语言中的一维数组的定义,C语言一维数组的定义和引用

    <C语言一维数组的定义和引用>由会员分享,可在线阅读,更多相关<C语言一维数组的定义和引用(5页珍藏版)>请在人人文库网上搜索. 1.C语言一维数组的定义和引用在程序设计中,为 ...

最新文章

  1. Android怎么隐藏前端,Android-Webview支持缩放并掩藏讨厌的缩放控制条
  2. linux怎么运行exam,《 rh124-exam》linux练习
  3. java新手笔记1 Hello World!
  4. xp系统无法创建宽带连接服务器地址,XP下无法建立宽带拨号连接修复一例(新建连接向导选项为灰色)...
  5. Windows 下使用 工具修改文件的 时间
  6. curl请求模拟post发送json
  7. Linux系统下按了Ctrl+s锁定屏幕后怎么办?
  8. HJ浇花(牛客竞赛 约束差分)
  9. 虚拟机Linux图形界面配置NAT-桥接
  10. 一个java文件里面可以写多少个class
  11. ejb3.0 中数据库的配置
  12. zabbix通过jmx监控tomcat
  13. Oracle下载安装:
  14. 阿里架构师直言:“没有实战都是纸上谈兵”,Redis实战PDF分享
  15. mysql数据库接收不了中文乱码_mysql数据库 中文乱码
  16. wpsmac和pc版的区别_WPS Mac版本与Microsoft有什么区别?
  17. hdu 5296 Annoying problem (LCA)
  18. 最新parity 以太坊客户端2.7.2稳定版配置参数说明
  19. 【10月31日】机器学习实战(二)决策树:隐形眼镜数据集
  20. Mathorcup数学建模竞赛第五届-【妈妈杯】A题:城市相邻两交叉口信号配时优化(附一等奖获奖论文和matlab代码实现)

热门文章

  1. svn篇2:idea中使用svn
  2. HttpClient Get请求带参数
  3. word里面如何在插入的图像上打字
  4. 利用代码实现自动刷网课阅读时长功能 JAVA
  5. 计算机 英文缩写含义,常见计算机英文缩写含义
  6. 医疗系统流程软件测试用例,如何写全流程的测试用例 - rose8561900的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...
  7. 用计算机做科学实验心得体会,做实验的心得体会3篇
  8. Mobius反演(莫比乌斯反演)
  9. 2021-09-27 网安实验-取证分析-计算机取证之Xplico
  10. Frame Interpolation