在以下代码中,我收到编译时错误,因为i
它被视为变体。错误是:“ByRef 参数类型不匹配。”。
但是如果我传递参数ByVal
,没有错误,为什么?
Private Sub Command2_Click()
Dim i, j As Integer
i = 5
j = 7
Call Swap(i, j)
End Sub
Public Sub Swap(ByRef X As Integer, ByRef Y As Integer)
Dim tmp As Integer
tmp = X
X = Y
Y = tmp
End Sub