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;
    
  • 相关阅读:
    NC105 二分查找
    Spark-Streaming总结
    spark java API 实现二次排序
    在eclipse上安装Scala插件
    maven:missing artifact jdk.tools:jar:1.7
    使用 Hive装载数据的几种方式
    Eclipse debug 调试快捷键
    yarn工作流程
    Windows 7 下安装mysql-5.7.18-winx64.zip
    希尔排序
  • 原文地址:https://www.cnblogs.com/fzu-031702148/p/8440892.html
Copyright © 2011-2022 走看看