zoukankan      html  css  js  c++  java
  • 引用的本质

     引用共用同一个内存空间,只是一个别名。

    #include <iostream>
    using namespace std;
    
    int main(void)
    {
        int a=10;
        int &b=a;
        
        printf("&a:%d
    ",&a);
        printf("&b:%d
    ",&b);
        
        cout<<"hello..."<<endl;
        
        return 0;    
    }

    运行结果:

    下列结构体占多少字节?

    struct Teacher
    {
        char name[64];  //64字节
        int age;        //4字节  内存对其故8字节
        
        int &a;            //32位  4字节  64位  8字节
        int &b;            //32位  4字节 
    };
    
    int main(void)
    {
        printf("sizeof(Teacher):%d
    ",sizeof(Teacher));
        
        return 0;
    }

    运行结果:

    引用的本质:

    引用的本质:

    //3引用的本质
    void modifyA(int &a1)
    {
        a1 = 100;
    }
    
    void modifyA2(int *const a1)
    {
        *a1 = 200;  //实参的地址  去间接的修改实参的值
    }
    int main(void)
    {
        int a =10;
        modifyA(a); //指向这个函数调用的时候,我们程序员不需要取a得地址
        printf("a:%d 
    ",a);
        
        modifyA2(&a); //如果是指针  需要我们程序员手工的取实参的地址
        printf("a:%d 
    ",a);
        
        return 0;
    }

    运行结果:

    间接赋值:

     

  • 相关阅读:
    性能优化之_android多线程
    bootstrap搜索样式
    bootstrap模态框通过传值解决重复提交问题
    web请求乱码问题总结
    jsp页面自动换行
    cron表达式
    js中简单操作
    文件上传(前端)
    viz.js操作流程
    graphviz.js划线操作
  • 原文地址:https://www.cnblogs.com/Liu-Jing/p/9643816.html
Copyright © 2011-2022 走看看