VB.没有返回值的.NET函数转换为c#时会得到返回错误

本文关键字:错误 返回 转换 返回值 函数 NET VB | 更新日期: 2023-09-27 18:06:38

转换一些VB。NET代码。有些静态函数对一些通过引用传递的参数做一些工作,但不返回任何东西。到底在VB中发生了什么。. NET函数,他们可以存在没有返回值,没有得到任何调试错误?布尔值发生了什么?

Overloads Shared Function ExampleMethod(ByRef buffer1() as Byte, ByRef buffer2() as Byte) As Boolean
'do stuff here, no return types
End Function
Overloads Shared Function ExampleMethod(ByRef buffer1() as Byte, ByRef buffer2 as Byte) As Boolean
'do stuff here, no return types
End Function

VB.没有返回值的.NET函数转换为c#时会得到返回错误

参见https://msdn.microsoft.com/en-us/library/sect4ck6.aspx

VB。Net中,您可以通过返回值,或者使用Return语句,或者将值赋给函数名,例如:

    ExampleMethod = true
    Exit Function
End Function

它接着说:

如果您使用Exit Function而没有为name赋值,则过程返回在returntype中指定的数据类型的默认值。如果未指定returntype,则过程返回Nothing,这是Object的默认值。

c#更严格一点!