C++ 引用类型

引用的定义:引用称为别名(alias),它用作对象的另一个名字。
通过引用我们间接地操纵对象,使用方式类似于指针。但是不需要指针的语法在实际的程序中引用主要被用作函数的形式参数——通常将类对象传递给一个函数。
引用类型由类型标识符和一个取地址操作符来定义引用必须被初始化
例如:
在这里插入图片描述
虽然引用也可以被用作一种指针,但是像对指针那样用一个对象的地址初始化引用却是错误的,可以定义一个指针引用
例如:
在这里插入图片描述
一旦引用已经定义,它就不能再指向其他的对象 这是它为什么必须要被初始化的原因。
引用的所有操作实际上都被应用在它所指的对象身上 包括取地址操作符
例如:
refVal += 2;
将 refVal指向的对象iva加2类似地
如下语句:
int ii = refVal;
把与ival相关联的值赋给ii而:int *pi = &refVal;
用 ival的地址初始化 pi
在这里插入图片描述
const引用可以用不同类型的对象初始化。
例如:
在这里插入图片描述
引用在内部存放的是一个对象的地址 它是该对象的别名。
引用实际上指向该对象 但用户不能访问它。
例如:
在这里插入图片描述
编译器转换为:
int temp = dval;
const int &ri = temp;
最后,指针和引用有两个主要区别:引用必须总是指向一个对象,如果用一个引用给另一个引用赋值,那么改变的是被引用的对象而不是引用本身。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值