VB.NET中,同一例程内混用ByRef和ByVal参数有何风险?

2026-05-06 10:181阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计333个文字,预计阅读时间需要2分钟。

VB.NET中,同一例程内混用ByRef和ByVal参数有何风险?

使用 `ByVal` 和 `ByRef` 参数在 `getFile` 函数中是常见的做法,但具体是否被认为是好的做法,取决于具体情况和编程习惯。以下是对给定函数的简单

plaintext在 VB.NET 或其他语言中,使用 ByVal 和 ByRef 参数在 getFile 函数中是否被认为是不好的做法?Function getFile(ByVal channel As Integer, ByRef Filename As String, ByRef Filesize As String) As Integer ' 函数实现...End Function

VB.NET中,同一例程内混用ByRef和ByVal参数有何风险?

用下面的getFile函数中使用的ByVal和ByRef参数编写函数是不是被认为是不好的做法(VB.NET或任何语言)?

Function getFile(ByVal channel As Integer, _ ByRef Filename As String, _ ByRef Filesize As String) As Integer ... End Function ... Dim status As Integer Dim filename As String Dim filesize As Integer For channel In 1 To 16 status = getFile(channel, filename, filesize) ... Next channel 我通常会尽量避免将ByRef放在一起,但它往往会变得丑陋和令人困惑.
你混合ByVal和ByRef这一事实并不仅仅影响可读性,而是仅仅拥有所有的ByRef恕我直言.

例如,如果我只需要文件名,我仍然需要传入一个filesize变量,我认为这有点丑陋.在阅读代码时,很容易错过参数可能会被更改.

正如Assaf在他的评论中所说的那样,我通常会尝试通过让方法返回某种可以包含所有返回数据的结构来解决整个问题.如果失败,我会抛出异常而不是返回状态(假设状态是某种错误).

本文共计333个文字,预计阅读时间需要2分钟。

VB.NET中,同一例程内混用ByRef和ByVal参数有何风险?

使用 `ByVal` 和 `ByRef` 参数在 `getFile` 函数中是常见的做法,但具体是否被认为是好的做法,取决于具体情况和编程习惯。以下是对给定函数的简单

plaintext在 VB.NET 或其他语言中,使用 ByVal 和 ByRef 参数在 getFile 函数中是否被认为是不好的做法?Function getFile(ByVal channel As Integer, ByRef Filename As String, ByRef Filesize As String) As Integer ' 函数实现...End Function

VB.NET中,同一例程内混用ByRef和ByVal参数有何风险?

用下面的getFile函数中使用的ByVal和ByRef参数编写函数是不是被认为是不好的做法(VB.NET或任何语言)?

Function getFile(ByVal channel As Integer, _ ByRef Filename As String, _ ByRef Filesize As String) As Integer ... End Function ... Dim status As Integer Dim filename As String Dim filesize As Integer For channel In 1 To 16 status = getFile(channel, filename, filesize) ... Next channel 我通常会尽量避免将ByRef放在一起,但它往往会变得丑陋和令人困惑.
你混合ByVal和ByRef这一事实并不仅仅影响可读性,而是仅仅拥有所有的ByRef恕我直言.

例如,如果我只需要文件名,我仍然需要传入一个filesize变量,我认为这有点丑陋.在阅读代码时,很容易错过参数可能会被更改.

正如Assaf在他的评论中所说的那样,我通常会尝试通过让方法返回某种可以包含所有返回数据的结构来解决整个问题.如果失败,我会抛出异常而不是返回状态(假设状态是某种错误).