本文主要总结在C++中指针与引用的区别.

  从定义与性质来看指针与引用有如下区别:

  指针表示的是一块变量的地址

  引用表示一个变量的别名.

  因此指针变量需要占用空间(一个指针变量在32位系统下占用4字节,64位系统下占用8字节);

  理论上来说,引用不需要占用空间.(但引用的底层也是靠指针来实现的,不要问我怎么知道的,看反汇编咯!)

  从用法来看如下区别:

  1.引用在定义时必须初始化且初始化后不能改变指向;指针可以不用初始化,也可以改变指向.

  2.指针的++、--操作改变的是地址,而引用的++、--改变的就是变量本身.

  3.指针使用时需要解引用,引用不需要解引用.

  4.指针sizeof代表指针的大小,引用sizeof表示变量的大小.

  5.指针可以有多级指针,而引用不存在多重引用.

  6.引用可以不能为空,而指针可以指向NULL

最新文章

  1. RBAC权限管理
  2. airline 設定 安裝
  3. DEV提示控件ToolTipControl
  4. CSS选择器的一些记录
  5. Neo4j图数据库管理系统开发笔记之三:构建安全的RMI Service(Server)
  6. 使用HttpClient操作ASP.NET Web API 2.1增删改查
  7. int和char的相同和不同。
  8. php二分式查找
  9. OpenCV学习笔记:MAT解析
  10. sort()排序 collections.sort();
  11. 百度地图LV1.5实践项目开发工具类bmap.util.jsV1.2
  12. linux系统自动备份打包部署脚本
  13. 27. pt-table-checksum
  14. 潭州课堂25班:Ph201805201 第九课 函数作用域和匿名函数 (课堂笔记)
  15. FCKEditor在IE10下的不兼容问题解决方法
  16. Bug02_MyBatis_org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
  17. shell 13文件包含
  18. Date类学习总结(Calendar Date 字符串 相互转换 格式化)
  19. iOS开发-音乐播放
  20. e578. Setting the Clipping Area with a Shape

热门文章

  1. android开发过程中踩过的坑
  2. Markdown 标记语言简介
  3. CMFCShellList和自定义ShellList结合使用,达到“直接浏览缩略图,双击打开图片”
  4. awk,sed文本处理案例
  5. java程序员--小心你代码中的内存泄漏
  6. 性能测试工具 - Apache JMeter (安装)
  7. Material Design学习-----FloatingActionButton
  8. Python 3 读写文件的简单方法!
  9. Maven的声明周期(Lifecycle )和命令(Phase)
  10. JVM 体系结构