51Testing软件测试论坛

标题: 引用与指针有什么区别? [打印本页]

作者: 测试积点老人    时间: 2019-5-9 11:06
标题: 引用与指针有什么区别?
RT


作者: abcsell    时间: 2019-5-10 09:21
指针高级
作者: 梦想家    时间: 2019-5-10 09:30
相同点:
  都是地址的概念;
  指针指向一块内存,它的内容是所指内存的地址;而引用则是某块内存的别名。
不同点:
  指针是一个实体,而引用仅是个别名;
  引用只能在定义时被初始化一次,之后不可变;指针可变;引用“从一而终”,指针可以“见异思迁”;
  引用不能为空,指针可以为空;
  “sizeof引用”得到的是所指向的变量(对象)的大小,而“sizeof指针”得到的是指针本身的大小;
  指针和引用的自增(++)运算意义不一样;
  引用是类型安全的,而指针不是(引用比指针多了类型检查)

作者: 清晨一缕阳光    时间: 2019-5-10 09:48

相同点:
  都是地址的概念;
  指针指向一块内存,它的内容是所指内存的地址;而引用则是某块内存的别名。
不同点:
  指针是一个实体,而引用仅是个别名;
  引用只能在定义时被初始化一次,之后不可变;指针可变;引用“从一而终”,指针可以“见异思迁”;
  引用不能为空,指针可以为空;
  “sizeof引用”得到的是所指向的变量(对象)的大小,而“sizeof指针”得到的是指针本身的大小;
  指针和引用的自增(++)运算意义不一样;
  引用是类型安全的,而指针不是(引用比指针多了类型检查)
作者: jingzizx    时间: 2019-5-10 11:11
都是地址的概念;
  指针指向一块内存,它的内容是所指内存的地址;而引用则是某块内存的别名。
不同点:
  指针是一个实体,而引用仅是个别名;
作者: 海海豚    时间: 2019-5-10 13:46
   1) 引用必须被初始化,指针不必。
    2) 引用初始化以后不能被改变,指针可以改变所指的对象。
    3) 不存在指向空值的引用,但是存在指向空值的指针。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2