引用

作者: 温柔倾怀 | 来源:发表于2020-04-29 14:54 被阅读0次

    引用

    int a = 10;
    int &b = a;
    b = 20;
    
    

    引用注意事项

    1. 引用必须初始化
    2. 初始化后就不可以更改了

    引用传参

    //可以简化指针
    
    void swap(int *a,int *b)
    {
        int temp = *a;
        *a = *b;
        *b = temp;
    }
    
    int a = 10, b = 20;
    swap(&a,&b);
    
    

    引用做函数返回值

    //引用做函数的返回值
    //不要返回局部变量的引用
    //
    
    int& test()
    {
        static int a = 10;  //静态变量,存放在全局区,程序结束后由系统释放
        return a;
    }
    
    int main()
    {
        int &num = test();
        test() = 1000;  //返回引用,可以作为左值
        cout << num << endl;    //num = 1000
        
    }
    

    引用的本质

    引用的本质在C++内部实现是一个指针常量,int * const p = &num;

    int a = 10;
    int &ref = &a;  //自动转换为 int * const ref = &a;   指针常量--指向不可以改变
    ref = 30;   //自动转换为 *ref = 30;
    
    

    常量引用

    //使用场景:用来修饰形参,防止误操作
    void showValue(const int &val)
    {
        //val = 2000;   不可修改
        cout << val << endl;
    }
    
    

    相关文章

      网友评论

          本文标题:引用

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