Что делает: = (двоеточие равно) в VB.NET?

Возможный дубликат:
Что такое синтаксис: =

Я попытался найти документацию по MDSN для := в VB.NET, а также очистить Google только, чтобы быть связан с мертвым MSDN page... Какова была бы цель :=?

Ответ 1

Он сильно называет аргументы, позволяя вам вызывать метод с аргументами в порядке, отличном от указанного в определении метода.

Например:

sub foo (byval x As Long, byval y As Long)
   debug.print (String.Format("{0}, {1}", x.ToString, y.ToString))
end Function

можно вызвать с порядком аргументов, обращенных с помощью их имен:

foo (y:=999, x:=111)

печатает:

111, 999

Это особенно полезно, когда у вас есть длинный список необязательных аргументов, вы хотите указать только некоторые из них, а те, которые вы хотите указать, не являются первыми.

Ответ 2

Он используется для обозначения аргументов в вызове метода и обычно используется с необязательными аргументами.

Это особенно полезно для вызова методов Word или Excel с помощью вызовов ActiveX, где имеется множество необязательных аргументов, большинство из которых никогда не используются.

Ответ 3

Я не уверен в VB.NET, но в Visual Basic 6.0, который был синтаксисом для назначения значения параметру метода по имени, а не по порядковой позиции.

Ответ 4

Назначает значения по именам вместо позиции.

Учитывая

Private Function foo(arg1 As Integer, arg2 As Integer) As Boolean
    Debug.WriteLine("{0}  {1}", arg1, arg2)
    Return True
End Function

они дают тот же результат

    foo(arg2:=2, arg1:=1)

    foo(1, 2)

отладочный вывод

1 2

1 2