面向对象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)用引用返回一个函数值的最大好处是,在内存中不产生被返回值的副本。

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值