zoukankan      html  css  js  c++  java
  • 引用、取址运算符、解引用运算符——傻傻分不清楚

    引用
    对象的别名。通过将声明符写成&d的形式来定义引用类型,其中d是声明的变量名。

    C++11中新增了:右值引用(rvalue reference),这种引用主要用于内置类。严格来说,
    平时提及的“引用”,指的是“左值引用”(lvalue reference)。


    &运算符:取地址运算符


    *运算符:解引用运算符。解引用一个指针将返回该指针所指的对象,为解引用的结果赋值

    也就是为指针所指的对象赋值。


    用代码说话:

    <span style="font-size:18px;">#include<iostream>
    using namespace std;
    int main()
    {
        int i = 42;
        cout<< "i :	" << i <<endl;
    
        int &r = i;
        // &紧随类型名出现,因此是声明的一部分,r是一个引用
        cout<< "r :	" << r <<endl;
    
        int *p;
        // *紧随类型名出现,因此是声明的一部分,p是一个指针
    
        p = &i;
        // &出现在表达式中,是一个取地址符
        cout<< "*p :	" << *p <<endl;
    
        *p = i;
        // *出现在表达式中,是一个解引用符
        cout<< "*p :	" << *p <<endl;
    
        int &r2 = *p;
        // &是声明的一部分,*是一个解引用符
        cout<< "r2 :	" << r2 <<endl;
    
        return 0;
    }
    </span>


  • 相关阅读:
    OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch
    带状态论文粗读(二)
    In-band Network Function Telemetry
    基于微信小程序的失物招领系统的Postmortem
    OpenStack安装
    Alpha冲刺Day12
    冲刺合集
    Alpha冲刺Day11
    Alpha冲刺总结
    测试总结
  • 原文地址:https://www.cnblogs.com/Genesis2018/p/9079839.html
Copyright © 2011-2022 走看看