簡體   English   中英

在vb.net方法中使用ByVal,通常的做法是什么?

[英]Using ByVal in vb.net methods, what's the common practice?

在vb.net中,默認情況下方法使用ByVal的參數,使其明確是更好的實踐/常規做法?

例如:

使用ByVal:

Private Sub MySub(ByVal Q As String)
{
   ' ...
}
End Sub

沒有ByVal:

Private Sub MySub(Q As String)
{
   ' ...
}
End Sub

根據微軟的說法:

在每個聲明的參數中包含ByVal或ByRef關鍵字是一種很好的編程習慣。

如果您使用Visual Studio,如果您沒有明確指定它,則默認插入ByVal

從VS 2010 SP1開始,IDE 不再自動插入 ByVal

我個人認為最好不要手動插入ByVal ,因為:

  1. 如果沒有明確指定ByValByRef ,它仍然是默認的傳遞機制
  2. 從方法簽名中省略ByVal使得ByRef脫穎而出。
  3. 它為代碼添加了“噪音”。 VB.Net已經非常冗長,不需要用不必要的ByVal來混淆代碼。

通常的做法是可以在ByValue或ByReference中指定方法參數。 在VB.NET中,默認參數類型是ByVal 在許多編程語言中,方法參數默認為by-value 如果參數未使用ByValByRef限定,則參數類型將為ByVal。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM