我有一个函数,当我调用它时,它让我不使用(),为什么?
Public Class Socio
Private _antiguedad As Integer
Public Function RetornarAntiguedad() As Integer
Return _antiguedad
End Function
End Class
Sub Main()
Dim test = New Socio()
test.RetornarAntiguedad <--- This works even though it doesnt have (), why?
Console.ReadKey()
End Sub
它看起来像一个属性?它不会在函数和属性之间产生混淆吗?
答案 0 :(得分:1)
括号是可选的,因此编译器不会返回错误,除非您正在添加参数。 我认为这是由于&#34;灵活的&#34; VB.Net的设计。
答案 1 :(得分:0)
在VB语法中,当您捕获其返回值时,函数调用不需要尾随()
。
在上面的示例中,您将调用函数,而不是捕获其返回值。因此,Visual Studio IDE应自动附加括号。
但是,如果您要将其更改为:
Dim test As New Socio()
Dim result as Integer = test.RetornarAntiguedad
......不再需要括号。
这只是VB.NET语法,就是这样。没什么好担心的。您的代码仍然有效。