10

可能重复:
:= 语法的用途是什么?

我已经尝试在 VB.NET 中搜索 MDSN 文档,:=并搜索 Google 只是为了链接到一个死的MSDN页面......目的:=是什么?

4

4 回答 4

6

它强烈地命名参数,允许您以不同于方法定义中指定的顺序调用带有参数的方法。

例如:

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

当您有很长的可选参数列表时,这尤其有用,您只想指定其中的几个,而您想要指定的不是第一个。

于 2011-07-01T13:44:03.040 回答
4

它用于命名方法调用中的参数,通常与可选参数一起使用。

它对于通过 ActiveX 调用调用 Word 或 Excel 方法特别有用,其中有大量可选参数,其中大部分从未使用过。

于 2011-07-01T13:43:04.673 回答
2

Assigns values by names instead of position.

Given

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

these produce the same result

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

    foo(1, 2)

debug output

1 2

1 2

于 2011-07-01T14:41:12.690 回答
2

我不确定VB.NET,但在Visual Basic 6.0中,这是按名称而不是按顺序位置为方法参数分配值的语法。

于 2011-07-01T13:43:42.563 回答