引用

引用的好处:

  1、引用的好处 C++使用结构体,不需要再使用 typedef。

  2、值传递是将实参进行拷贝,赋值给形参,如果对象比较大,每次拷贝效率比较低,并且函数内部无法修改外部变量的值,能力较弱。若使用地址传递无论数据大小,每次只需要传递指针大小的数据,传递效率较高,函数具有修改外部变量的能力(const 指针)。而引用即可以有值传递简洁的语法,又可以兼顾指针传递的效率。

  3、如果要使用常量引用,编译器会给常量分配内存,并且让新创建的对象引用该内存。

  4、引用的机制:

    引用是通过指针来实现的,引用一旦定义就不能修改,引用的本质还是取地址,解引用,C语言中我们需要自己做,C++中引用语法是编译器帮我们做。

  5、引用的问题:引用究竟占不占用内存?

    程序员的角度:引用只是一个别名,不占用内存。

    编译器的角度:内部实现是一个指针,所以要占内存。

  6、函数的返回值类型可以是引用,地址,值。

代码实现:

引用的语法:

基本类型及结构体引用:

对数组引用:

对指针的引用:

引用作为返回值类型:

注意事项:

1.&在此不是求地址运算,而是起标识作用。

2.类型标识符是指目标变量的类型

3.必须在声明引用变量时进行初始化,初始化之后不能改变。

4.不能有 NULL 引用。必须确保引用是和一块合法的存储单元关联。

最新文章

  1. 比achartengine更加强大的Android图表控件。
  2. java中 用telnet 判断服务器远程端口是否开启
  3. Android开发2:事件处理及实现简单的对话框(Toast,AlertDialog,Snackbar,TextInputLayout的使用)
  4. android tools使用方式
  5. luogu1207双重回文数[usaco1.2]Dual Palindromes
  6. python模块介绍二。
  7. net-snmp-5.7.3配置编译安装
  8. Android项目框架升级尝鲜OkHttp
  9. Oracle 表死锁 解决
  10. Android studio听云接入另外一种方式
  11. 采访 Lua 发明人的一篇文章
  12. linux 基本使用命令
  13. 获取OlapConnection连接
  14. RoIPooling
  15. 残差网络ResNet笔记
  16. Rabbit原理理解
  17. 剑指offer——python【第16题】合并两个有序链表
  18. C# 图片 旋转和翻转 RotateFlip
  19. java类与继承(转载)
  20. SimpleDraweeView 设置圆角不生效问题

热门文章

  1. Windows下计划任务的使用
  2. OD 逆向工具常用快捷键
  3. 线段树区间取max区间查询
  4. NServiceBus+Saga开发分布式应用
  5. 部署在本服务器上,Jenkins无法启动Tomcat
  6. MFC连接Sqlserver
  7. linux下mqtt-client
  8. python小例子(三)
  9. R语言:绘制知识图谱
  10. Java自动化测试框架-07 - TestNG之Factory篇 - 欢快畅游梦幻工厂(详细教程)