zoukankan      html  css  js  c++  java
  • 每日一问1:指针和引用的区别

      指针(pointer)和引用(references)都是对另一个变量的一种关联,即通过指针和引用可以使用另一个变量。而它们最大的区别在于:指针是一个变量,而引用不是。但在c++底层中,引用是通过指针实现的,所以,在实现层面上来说,引用就是指针,但是在c++语法上来说,c++编译器并不为引用类型分配内存,所以引用不能为空,必须被初始化,一旦初始化不能更改引用对象。所有对引用的操作都是对原始对象的操作 。

      指针是一个变量,它所存储的就是它所指向的变量的地址,而它同时也有着自己的地址。引用可以理解为变量的"小名”,它的地址也就是它引用的变量的地址。也可以说,指针指向一块内存,它的内容是所指内存的地址;引用是某块内存的别名。它们更细致的区别总结如下:


      后续查阅资料的过程中,发现了自己理解的错误,因为是学习的过程,所以不删除错误,引以为戒。在上面提到引用不是一个变量,这是错误的,引用是一个变量,它在底层的实现就是一个变量,一个常量指针。C++对常量指针进行一些包装后就成了引用。

      

    2020-01-10

  • 相关阅读:
    数据库基础
    (转)数据流图
    (转)SQL执行顺序
    (转)数据库隔离级别及实现原理
    (转)求单链表是否有环,环入口和环长
    (转)最长公共子序列
    (转)Java锁、自旋锁、CAS机制
    Java线程状态转换
    OpenSUSE 13.2安装Texlive2014+Texmaker+Lyx
    GIMP也疯狂之动态图的制作(四)
  • 原文地址:https://www.cnblogs.com/honernan/p/12175899.html
Copyright © 2011-2022 走看看