zoukankan      html  css  js  c++  java
  • OOP 1.1 引用

    1.1 引用

    1、语法:类型名&引用名=某变量名 e.g. int &b=a;

    • 定义:引用则等价这个变量
    • 引用名的类型是:类型 &
    • 注意事项:
      • ①定义引用时,一定要将其初始化成引用某个变量
      • ②初始化后,它就一直引用该变量,不会再引用别的变量
      • ③引用只能引用变量,不能引用常量、表达式
      • ④引用一个引用是合法的 e.g. int &b=a;int &c=b//legal

    2、引用实例:swap函数

    • c 指针:
    void swap(int *a,int *b)
    {
        int tmp;
        tmp=*a;
        *a=*b;
        *b=tmp;
    }
    swap(&n1,&n2);
    
    • c++ 引用:
    void swap(int &a,int &b)
    {
        int tmp;
        tmp=a;
        a=b;
        b=tmp;
    }
    swap(n1,n2);
    

    3、引用可作为函数的返回值

    int n=4;
    int &f(){return n;}
    f()=40;
    cout<<n;//output 40
    

    4、常引用

    • 语法:const 类型 & 引用名=某变量名 e.g.: const int &B=A;
    • 引用名的类型是 const 类型&
    • 不能通过常引用修改其引用的内容

    5、引用与常引用的关系

    • T& 或者 T 可以初始化const T&的引用
    • const T和const T&不能初始化T& (除非强制类型转化)
      e.g.
            int A;
    	int &B=A;
    	const int &C=B;
    	const int &D=A;
    	int & E=C;//ILLEGAL
    	const int &F=C;
    
  • 相关阅读:
    Classification and Representation(分类与表示)
    静态链表
    拓扑序列
    二分图问题
    大数据概述
    QT出现应用程序无法正常启动0xc000007b的错误
    简易有穷自动机实验
    一个简易的C语言文法
    词法分析器实验报告
    浅谈词法分析器
  • 原文地址:https://www.cnblogs.com/fzu-031702148/p/8440892.html
Copyright © 2011-2022 走看看