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

这里运算符重载使用的&怎么理解呢?

&是跟着前面还是后面的,它在这里怎么理解呢?感觉头晕,看过百度对&的解释,还是不明白

正在回答

2 回答

在c++中 &表示当前值的引用,即当前值的一个副本.本质是创建指向当前值的二级指针修改址得到的.是完全等同于原值本身的.引用的可以是值,也可以是指针,类等 因为本质都是指针完整复制(值与址).

&在后边表示类型是引用,&在前边表示后边接的变量或指针为引用.

例如 int & Demo(int &t)   {}

第一个&表示返回值为一个int类型的引用(注意不要返回局部对象的引用) ,第二个&表示接受的参数是一个引用,即有指针一样的功能,可以修改实参的值.

0 回复 有任何疑惑可以回复我~
#1

逝月兮 提问者

谢谢,似乎理解了。那么返回一个引用是指返回指针吗?
2017-06-03 回复 有任何疑惑可以回复我~
#2

FINAL_BOOS 回复 逝月兮 提问者

返回引用相当于返回&后边的原型,如果原值是指针的话,那个就返回这个指针.
2017-06-03 回复 有任何疑惑可以回复我~
#3

逝月兮 提问者 回复 FINAL_BOOS

哦哦,明白了,谢谢你
2017-06-03 回复 有任何疑惑可以回复我~

这个跟前面还是后面都是一样的。就跟int* p和int *p一样,编译结果都是相同的。

0 回复 有任何疑惑可以回复我~
#1

逝月兮 提问者

那这里的作用是什么?取地址?取谁的呢?
2017-06-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之模板篇
  • 参与学习       91156    人
  • 解答问题       318    个

本C++教程力求即学即会,所有知识以实践方式讲解到操作层面

进入课程

这里运算符重载使用的&怎么理解呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信