2011-09-07 115 views
0

我以前見過這個,但直到現在我才真正對它的目的感興趣。看一看下面兩個例子(OH,這是所有在VB.net順便說一句):設置參數

實施例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 

兩個結果在同樣的事情,你可能要關注的主要事情是我設定論點的地方。在設置參數時,:=的用途是什麼。我認爲它比我剛剛嘗試過的有更重要的用途,但我不能谷歌它,因爲谷歌不喜歡符號。

回答

2

命名參數。由於VB.NET允許可選參數,因此您可能偶爾只想傳遞第二個或第三個參數,而將前面的參數保留默認值。使用命名參數,你可以。你可以做的另一件事是以不同的順序傳遞參數。最後,當一個函數需要大量參數時,傳遞它們的命名風格可能有助於可讀性。

1

它用於強調傳遞給函數的參數的名稱。因爲有很多可選的參數,所以在訪問Excel,Word等時非常方便。主知道C#可以做這樣的事情!

編輯
如果現在已經實施,我的.NET停止3.5,所以向Microsoft團隊道歉!

2

我相信它的歷史可以追溯到Visual Basic 5.0或6.0,當它的過程/函數開始接受NAMED參數時。如果程序/功能使用可選參數,這很方便。如果有6個參數,並且如果需要設置第5個參數的值,而讓其他參數採用默認值,則此格式在調用時非常有用 - 您只需在參數和值中設置「:=」之間。