面向对象C++(5.1)引用是神马

C++ 引用

引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。

引用的特性

  • 不存在空引用。引用必须连接到一块合法的内存。
    所以引用类型需要立即初始化!
  • 一旦引用被初始化为一个对象,就不能被指向到另一个对象。指针可以在任何时候指向到另一个对象。
  • 引用必须在创建时被初始化。指针可以在任何时间被初始化。

int& r=i

  • 在此的&不是用来求地址,而是做一个引用的标志

上面语句为一个引用的例子,r是一个初始化为i的int类型引用
(这之后r不能同时做其他的变量的引用,)
引用可以用于返回值和参数表

引用作为参数时,不同于直接&a的传地址
而是新建引用p1,p2
之后传进来的实参都可以借用引用被修改

void swap(int &p1, int &p2) 
{ 
int p; p=p1; p1=p2; p2=p;
 }

引用作为返回值

要以引用返回函数值,则函数定义时要按以下格式:

类型标识符 &函数名(形参列表及类型说明) {函数体}

说明:
  (1)以引用返回函数值,定义函数时需要在函数名前加&
  (2)用引用返回一个函数值的最大好处是,在内存中不产生被返回值的副本。

假如要返回一个对象的话,使用引用类型可以避免在传值前产生的副本占用储存位置

更详细的学习先暂时跳过~

发布了14 篇原创文章 · 获赞 0 · 访问量 150

猜你喜欢

转载自blog.csdn.net/qq_45772415/article/details/104821562