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>


  • 相关阅读:
    12.3
    团队项目第一阶段冲刺第一天
    4.22
    4.21 re重要功能
    12.1
    12.2
    4.17
    4.16
    css设置子元素相对于父元素保持位置不变(含有滚动条的父元素)
    git操作和npm操作清单
  • 原文地址:https://www.cnblogs.com/Genesis2018/p/9079839.html
Copyright © 2011-2022 走看看