C++学习03_引用

基本使用                                                                                                                                                             

C++提供了给变量命名的机制,就是引用(Reference)。引用是一种复合类型。

//语法
数据类型 &name=data

注意,引用在定义时需要添加&,在使用时不能添加&,使用时添加&表示取地址。

引用作为函数参数                                                                                                                                              

在C语言中,函数参数传递可以分为两种:值传递和地址传递。现在我们又多了一种函数参数传递的方式,那就是引用。

#include<iostream>
using namespace std;

//值传递
void swap1(int a, int b)
{
    int tmp = a;
    a = b;
    b = tmp;
}
//地址传递
void swap2(int *pa, int *pb)
{
    int tmp = *pa;
    *pa = *pb;
    *pb = tmp;
}
void swap3(int &a , int &b)
{
    int tmp = a;
    a = b;
    b = tmp;
}
int main()
{
    int num1 = 10;
    int num2 = 20;
    swap1(num1, num2);
    printf("num1 = %d,num2 = %d\n", num1, num2);

    swap2(&num1, &num2);
    printf("num1 = %d,num2= %d\n", num1, num2);

    swap3(num1, num2);
    printf("num1 = %d, num2 = %d \n",num1,num2);

    return 0;
}
View Code

 当实参占据内存大时,用引用代替传值(需要复制)可提高效率, 如果不希望因此无意中修改实参,可以用const修改符。

常引用                                                                                                                                                              

const引用得意思是指向const对象的引用。

定义方式:const Type &name = var; int a; const int &b = a; const int &num = 10;
posted @ 2019-04-08 16:49  星空下聆听  阅读(262)  评论(0编辑  收藏  举报