传值调用和引用调用

值调用是指当发生函数调用时候,给形参分配内存空间,并用实参来初始化形参(直接将实参的值传递给形参).这一过程是参数值的单向传递过程,一旦形参获得了值,便于实参脱离了关系,此后无论形参发生了什么变化,都不影响实参了.  
   
  引用调用将引用作为形参,在执行主调函数中的调用语句时候,系统自动用实参来初始化形参.这样形参就成为实参的一个别名,对形参的任何操作就直接会作用于实参。

 

#include"iostream.h"

Class Sample

{char ch1,ch2;

public:

//*****error***//

friend void set(Sample s,char ch1,char ch2)

{s.ch1=ch1;

s.ch2=ch2;

}

 

void print(){cout<<"ch1="<<ch1<<"ch2="<<ch2<<endl;}

};

 

void main()

{Sample obj;

set(obj,'7','9');

obj.print();

}

 

//*****error***//下 为了改变对象的值,应使用引用调用。应该为

friend void set(Sample &s,char ch1,char ch2);

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值