作者hatvito (please get中岛银)
看板TransCSI
标题[问题] 传址传值
时间Fri Jul 8 22:17:37 2011
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim x As Integer
x = 3
Call f1(x)
Debug.Print(x)
End Sub
Sub f1(ByRef x As Integer)
Call t2(x = x + x, x, x)
End Sub
Sub t2(ByRef a As Integer, ByVal b As Integer, ByRef c As Integer)
a = a + 1
b = b + 2
c = a + b * c
End Sub
结果是16
问题是出在A
A执行结果是1
也就是说A收到的零
为什麽呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.26.58.170
1F:→ zerof:x= x+x 里面的等号是compare的意思(所以值传入0) 07/22 20:20
2F:→ CaptainH:常数0怎麽reference ? 11/17 02:09