永发信息网

函数的形参在定义是定义为了引用,那么调用时传参该如何传?

答案:3  悬赏:40  手机版
解决时间 2021-01-11 09:47
  • 提问者网友:鐵馬踏冰河
  • 2021-01-10 22:36
函数的形参在定义是定义为了引用,那么调用时传参该如何传?
最佳答案
  • 五星知识达人网友:神鬼未生
  • 2021-01-10 23:12
传参的过程本质上是用实参来初始化形参。而初始化一个引用需要用该引用所指涉类型的对象,即将引用绑定到该对象,因此如果形参定义为类型T的引用,传参时直接传类型T的对象。当然,也要符合引用初始化的各种规定。样例:
void foo(int &a); //以指涉int的引用为参数
int i = 0;
foo(i); //正确
foo(0); //错误,非常量引用不能绑定到右值,也即不能用0(右值)初始化a(非常量引用)
全部回答
  • 1楼网友:狂恋
  • 2021-01-11 00:55
很多书上说的“按值传递”,理解这个按值传递就知道怎么传递参数了,所有的参数传递是“按值”传递只是这个值是参数的数值(例如a=10中的10)还是参数本身的地址值(如a=10中的a的地址值),这两种值都可以作为参数调用。
具体该以何种方式传送,还得看在函数定义的原型中怎么定义的。
  • 2楼网友:一秋
  • 2021-01-11 00:14
直接传值就可以了,调用过程不变的。
比如
void f1(int a,);
void f2(int &a,);
调用这两个函数都可以这样
void main()
{
int a=8;
f1(a);
f2(a)
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯