美文网首页
指针和引用的差别?

指针和引用的差别?

作者: 我是恐龙_35b2 | 来源:发表于2019-07-12 13:37 被阅读0次

         (1)非空区别。在任何情况下都不能使用指向空值的引用。一个引用必须总是指向某个对象。因此如果你使用一个变量并让它指向一个对象,但是该变量在某些时候也可能不指向任何对象,这时你应该把变量声明为指针,因为这样你可以赋空值给该变量。相反,如果变量肯定指向一个对象,列如你的设计不允许变量为空,这时你应该把变量声明为引用。不存在指向空值的引用这个事实意味着使用引用的代码效率比使用指针要高。

          (2)合法性区别。在引用之前不需要测试它的合法性。相反,指针应该总是被测试,防止其为空。

          (3)可修改区别。指针和引用的另一个重要的区别是指针可以被重新赋值以指向另一个不同的对象。但是引用则总是指向在初始化时被指定的对象,以后不能改变,但是指定的对象其内容可以改变。

          (4)应用区别。总的来说,在以下情况使用指针:一是考虑到存在不指向任何对象的可能(在这种情况下,能够设置指针为空),二是需要能够在不同的时刻指向不同的对象(在这种情况下,你能改变指针的指向)。如果总是指向一个对象并且一旦指向一个对象后就不会改变指向,那么应该使用引用。

    相关文章

      网友评论

          本文标题:指针和引用的差别?

          本文链接:https://www.haomeiwen.com/subject/owyekctx.html