您好,登錄后才能下訂單哦!
這篇文章主要介紹了VB.NET如何實現過程重載,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
VB.NET過程重載是指使用相同的名稱和不同的參數列表在多個版本中定義某個過程。重載的目的是定義過程的若干個密切相關的版本,而不需要通過名稱來區分它們,可通過改變參數列表達到此目的。
VB.NET過程重載規則
假設要編寫一個 Sub 過程來根據客戶的余額公布交易,同時希望能夠通過名稱或者通過帳號引用客戶。為此,可以定義兩個不同的 Sub 過程,如下例所示:
Visual Basic
Sub postName(ByVal custName
As String, ByVal amount
As Single)' Insert code to access
customer record by
customer name.End Sub
Sub postAcct(ByVal custAcct
As Integer, ByVal
amount As Single)' Insert code to access
customer record by account number.End Sub
VB.NET過程重載版本
另一種方法是重載一個單獨的過程名。可以使用 Overloads 關鍵字為每一個參數列表定義該過程的一個版本,如下所示:
Visual Basic
Overloads Sub post(ByVal
custName As String, ByVal
amount As Single)' Insert code to access
customer record by
customer name.End Sub
Overloads Sub post(ByVal
custAcct As Integer,
ByVal amount As Single)' Insert code to access
customer record by
account number.End Sub
其他VB.NET過程重載
如果還需要接受以 Decimal 或 Single 表示的交易金額,可進一步重載 post 以允許這種變化形式。如果在上例中對每個重載都進行了這樣的操作,就會有四個 Sub 過程,它們具有相同的名稱但是具有四個不同的簽名。
VB.NET過程重載的優點
重載過程的優點在于使調用更靈活。若要使用前面示例中聲明的 post 過程,調用代碼可以獲得 String 或 Integer 類型的客戶標識,然后在兩種情況下都調用同一過程。下面的示例將說明這一點:
Visual Basic
Imports MSvb = Microsoft.
VisualBasicVisual Basic
Dim customer As String
Dim accountNum As Integer
Dim amount As Single
customer = MSVB.Interaction.
InputBox("Enter customer name
or number")amount = MSVB.Interaction.
InputBox("Enter transaction
amount")Try
accountNum = CInt(customer)
Call post(accountNum, amount)
Catch
Call post(customer, amount)
End Try
感謝你能夠認真閱讀完這篇文章,希望小編分享的“VB.NET如何實現過程重載”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。