作者terryporter (月光光心慌慌)
看板Visual_Basic
标题问一个白痴Call By Value问题
时间Tue Feb 13 21:14:06 2007
有一传值呼叫疑问请各位高手协助一下
我自学至今观念还不是很清楚
Sub ADD (X,ByVal Y)
X=X^2 : Y=Y^2
End Sub
Private Sub
Form_Activate()
A=2:B=3
Call ADD (A+B,B)
Print A,B
End Sub
答案是 2 , 3
B有Call ByValue是没问题
但是X没有阿??请各位高手解惑一下 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.57.99.156
1F:推 BearWu:这样子是不是只有PRINT出来,实际上ADD有代进去,但没PRINT 02/13 21:38
2F:推 terryporter:啥意思? 02/13 21:56
3F:→ nobody1:add function 是空的 02/13 22:09
4F:→ terryporter:抱歉我漏打一行 补上去 X^2 Y^2 02/13 22:20
※ 编辑: terryporter 来自: 61.57.99.156 (02/13 22:21)
5F:推 fumizuki:vb6的预设是 Call By Reference 02/14 06:45
6F:→ terryporter:然後? 02/14 14:00
7F:推 sjgau:但是,你的主程式 呼叫副程式的时候,对应的参数是 02/14 19:28
8F:→ sjgau:常数,(), 数学运算式的时候,就变成 call by reference 02/14 19:29
9F:推 diolin:当传进的, 不是单一变数时, 一律都是用 Call by Value 02/15 23:09
10F:推 diolin:不然传个数字123进去, 要referance到哪去 :) 02/15 23:16
11F:推 fumizuki:是否可以说是把数字当作常数传入,一样是 byref 02/17 12:14
12F:推 fumizuki:没有写byval 都一律使用byref传递0.0 02/17 12:15
13F:推 terryporter:这题我懂了,感谢以上热心的高手 03/02 23:10