为了账号安全,请及时绑定邮箱和手机立即绑定

数据结构 函数参数中的 &是干什么的?

数据结构 函数参数中的 &是干什么的?

阿波罗的战车 2019-02-21 14:14:31
数据结构 函数参数中的 &是干什么的?
查看完整描述

2 回答

?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

函数参数中的& 是别名引用的意思~ 目的是为了将实参的别名传递给形参,这样可以利用形参传递出想要的值。

如:
voidfun1(int a)
{
a ++;
}

void fun2(int &a)
{
a++;
}

现在有如下声明:
int a = 10;
调用fun1 ----> fun1(a); printf("a = %d", a); 结果: a = 10;
原因,形参在函数完成后就释放了,所以a还是等于10
调用fun2 ----> fun2(a); printf("a = %d", a); 结果: a = 11;
原因,由于传递的是实参的引用,别名,所以在函数完成后,实参得到了修改 所以a应该等于11

查看完整回答
反对 回复 2019-03-04
?
红糖糍粑

TA贡献1815条经验 获得超6个赞

引用是一种复合类型,在变量前加&来定义,在引用的情况下每一种引用类型都关联到某一其他类型。不能定义引用类型的引用,但可以任何其他类型的引用。
int ival=1024;
int &refval=ival; 作用在reval上的操作事实都是作用在引用绑定的对象上

查看完整回答
反对 回复 2019-03-04
  • 2 回答
  • 0 关注
  • 911 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信