【C++基础】--- 引用

  1. 什么是引用
  2. 引用的概念及用法
  3. 引用做参数
  4. 引用做返回值
  5. 引用和指针的区别

引用


引用其实就是给对象“起别名”,定义了一个原有对象的同义词,对引用进行的操作和对被引用所绑定的对象做的操作等价

用法:(类型) 变量名 = & 变量名;
如:

int a = 0;
int &b = a;


引用的概念及用法


  1. 引用的类型必须与被引用的类型相同
  2. 声明引用的同时必须对其初始化
  3. 引用的变量名不能再用作其他变量的变量名
  4. 引用不是定义一个新的变量,因此不会为变量开辟空间

引用做参数


形参是引用变量,和实参是一个变量,调用函数时,形参(引用变量)指向实参变量
内存单元。这种通过形参引用可以改变实参的值

int Swap(int &a, int &b)
{
    int tmp = a;
    a = b;
    b = tmp;
}

int main()
{
    int a = 3, b = 4;
    Swap(a,b);
    return 0;
}

引用做返回值


C++ 函数可以返回一个引用,方式与返回一个指针类似
函数返回值时会产生一个临时变量作为函数返回值的副本,而返回引用时不会产生值的副本

不能返回一个局部变量的引用,随局部变量生命周期的结束,相应的引用也会失效


引用和指针的区别


区别:

  1. 指针是一个实体,需要开辟空间;引用只是起别名,不需要开辟空间
  2. 引用被定义时必须初始化,且不能够改变;指针在定义时不一定需要初始化,且可以更改指针的指向
  3. 引用不能定义为NULL,指针可以
  4. 有多级指针,没有多级引用
  5. 指针和引用的自增结果不同,指针自增指向下一块空间,引用自增只是变量值加一
  6. 引用访问一个变量是直接访问,指针是间接访问

猜你喜欢

转载自blog.csdn.net/Mr_HHHHH/article/details/82107994
今日推荐