★相同点:安全
●都是地址的概念;测试
指针指向一块内存,它的内容是所指内存的地址;而引用则是某块内存的别名。指针
★不一样点:对象
●指针是一个实体,而引用仅是个别名;内存
●引用只能在定义时被初始化一次,以后不可变;指针可变;引用“从一而终”,指针能够“见异思迁”;变量
●引用没有const,指针有const,const的指针不可变;引用
●引用不能为空,指针能够为空;总结
●“sizeof 引用”获得的是所指向的变量(对象)的大小,而“sizeof 指针”获得的是指针自己的大小;co
●指针和引用的自增(++)运算意义不同;const
●引用是类型安全的,而指针不是 (引用比指针多了类型检查)
总结:
1.非空区别。 任何状况下都不能使用指向空值的引用。
2.合法性区别。 在使用引用以前不须要测试它的合法性,指针则老是被测试,防止其为空。
3.可修改区别。 指针能够被从新赋值指向不一样的对象。 引用不能被修改,可是指向的对象其内容能够修改。
4.应用区别。