设置参数

时间:2011-09-07 22:30:01

标签: vb.net arguments

我以前见过这个,但直到现在我才真正对它的目的感兴趣。看看以下两个例子(哦,这都是VB.net中的btw):

示例1:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Using nFD As New FontDialog
        If nFD.ShowDialog = Windows.Forms.DialogResult.OK Then
            LoadFont(_font:=nFD.Font)
        End If
    End Using
End Sub

Private Sub LoadFont(ByVal _font As Font)
    MsgBox(_font.Name)
End Sub

示例2

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Using nFD As New FontDialog
        If nFD.ShowDialog = Windows.Forms.DialogResult.OK Then
            LoadFont(nFD.Font)
        End If
    End Using
End Sub

Private Sub LoadFont(ByVal _font As Font)
    MsgBox(_font.Name)
End Sub

两者都导致相同的事情,你可能要注意的主要事情是我设置参数的地方。设置参数时:=的目的是什么。我认为它比我刚刚尝试的更重要,但我不能谷歌,因为谷歌不喜欢符号。

3 个答案:

答案 0 :(得分:2)

命名参数。由于VB.NET允许使用可选参数,因此有时可能只想传递第二个或第三个参数,而将前面的参数保留为默认值。使用命名参数,您可以。您可以做的另一件事是以不同的顺序传递参数。最后,当一个函数需要很多参数时,将它们命名为named-style可能有助于提高可读性。

答案 1 :(得分:2)

我相信当它的过程/函数开始接受NAMED参数时,它可以追溯到Visual Basic 5.0或6.0。如果过程/函数使用了OPTIONAL参数,这会派上用场。如果有6个参数,并且如果您需要设置第5个参数的值,同时让其他参数采用默认值,则此格式在调用时非常有用 - 您只需要使用“:=”设置参数和值之间。

答案 2 :(得分:1)

它用于强调命名传递给函数的参数。当你访问Excel,Word等时会派上用场,因为有很多可选的参数。上帝知道c#可以做这样的事情!

编辑
如果现在已经实现了,那么我的.NET会以3.5停止向微软团队道歉!