菜鸟问题:参数传递
一个类:ClassA
函数:f(Class &a);
现定义 ClassA* b;
问:如何把参数b传给函数f,还望大侠解释一下Class&参数的含义,谢谢
问题点数:50、回复次数:8Top
1 楼sbg(宝宝酥)回复于 2002-05-21 16:29:29 得分 20
f(*b)Top
2 楼sbg(宝宝酥)回复于 2002-05-21 16:30:53 得分 10
f(*b);
相当于classA &a=*b;
Top
3 楼penghwa(子曰)回复于 2002-05-21 16:35:27 得分 0
地址调用
f(b)Top
4 楼awinder(风)回复于 2002-05-21 16:36:04 得分 10
f(*b);
ClassA &a
是定义引用
&a=*b;
使用a实际上就是在使用*b
在此之前还要
b=new ClassA;Top
5 楼jerry921(jerry)回复于 2002-05-21 16:46:51 得分 10
类不用用引用来调用,不如如下改:
函数:f(ClassA *a);
...
ClassA* b;
...
f(b)
Top
6 楼wangxj0600(闭门思过中)回复于 2002-05-21 16:59:02 得分 0
class &a是 引用。Top
7 楼poorjack(poorjack)回复于 2002-05-21 17:01:02 得分 0
我要能改函数就好了,现在别人的函数拿来用,而且老出错。
我跟踪到函数f(int a,ClassA & t)定义,结果在watch框中t说是没有定义?但是a可以显示出来,什么原因?Top
8 楼mircrocat(酷猫)回复于 2002-05-21 17:06:18 得分 0
ClassA &a是引用参数,
把参数b传给f只需调用f(*b),
就是把*b传给&a,
这样在f内部,a实际上就是*b的引用,改变a就是改变*b.Top




