VB -Parentheses!请解释?

时间:2014-03-18 00:04:05

标签: vb.net

Sub Main() 

    Console.WriteLine("check")   
    Console.Read()

End Sub

为什么Sub Main()需要它们?它们如何适用于此程序? .WriteLine(“”)这里我正在添加一个值。 Console.Read()是否持有值“check”以在控制台上显示?为什么他们在这里。 我知道你们所有的专家认为这是一个愚蠢的问题,但是我无法帮助我解决它!对我来说,这些是持有或传递过程值的框。 sub main是一个容纳使用进入代码的容器吗?如果是这样,为什么当使用表单按钮时它已满?但这里的VB默认未使用且为空?在没有事件值的情况下,我似乎不应该在那里...... ?????

2 个答案:

答案 0 :(得分:8)

在需要时需要括号,在可选时需要optional。在空参数/参数列表的情况下,括号是"仅用于show"。

Sub Procedure可以声明为Sub Main()Sub Main - 当没有参数时,括号是可选的。同样,如果(且仅当)没有提供参数,则可以不带括号调用过程/函数。

Sub A               ' ok, no parameter list - no need for parenthesis
Sub A()             ' it's fine to use parenthesis anyway
Sub B(x as Integer) ' need parenthesis for parameter list

obj.A               ' ok, no arguments - no need for parenthesis
obj.A()             ' it's fine to use parenthesis anyway
obj.B(42)           ' need parenthesis when arguments are specified

在上文中,A的定义和A的调用是等效的,因为在这些情况下,括号是可选的。

答案 1 :(得分:2)

调用方法时,您可以在VB中选择是否要在没有参数的情况下包括括号。对于方法的定义也是如此,无论是函数还是子函数。

请参阅http://msdn.microsoft.com/en-us/library/dz1z94ha.aspx(MSDN上的子声明)。

  

调用子程序

     

通过在语句中使用过程名称来调用Sub过程   然后在括号中用其参数列表跟随该名称。   只有在不提供任何参数时才能省略括号。   但是,如果您始终包含,则代码更易读   括号中。