引用还是指针?

Posted share-ideas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了引用还是指针?相关的知识,希望对你有一定的参考价值。

  • 引言

我们知道在C++中引用和指针都可以用于间接访问指代对象,但是何时采用哪一个,也许我们并非很明确地知道。因此,写下本文为大家提供参考。

  • 选用规则

1、当可不指向任何对象,即NULL,使用指针

  由于引用一定是指向某个对象的,不存在空引用。

2、当要求可指向另一对象时,使用指针

  因引用总是指向最初获得的那个对象,不可更改

3、实现某些操作符时,如operator[],使用引用

4、因不存在空引用,引用更高效,不用判空

    void printInt(const int& a) {
        printf("%d
", a)
    }
    void printInt(const int* a) {
        if (a) {
            printf("%d
", *a)
        }
        
    }

 

  • 总结

当一定指向某个对象,且不会更改指向的对象,则使用引用,否则使用指针。

以上是关于引用还是指针?的主要内容,如果未能解决你的问题,请参考以下文章

引用还是指针?

getApplicationContext给出空指针异常[重复]

我应该避免在现代 C++ 中引用指针还是在这种特殊情况下可以

java是传值还是传引用

Android 应用程序不断因空指针异常而崩溃

指针和引用 - 简单的 CharArray 操作程序