В следующем коде я получаю ошибку времени компиляции, потому что i
рассматривается как вариант. Ошибка: «Несоответствие типа аргумента по ссылке».
Но если я передаю параметры 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