Sub Main()
Console.WriteLine("check")
Console.Read()
End Sub
为什么Sub Main()需要它们?它们如何适用于此程序? .WriteLine(“”)这里我正在添加一个值。 Console.Read()是否持有值“check”以在控制台上显示?为什么他们在这里。 我知道你们所有的专家认为这是一个愚蠢的问题,但是我无法帮助我解决它!对我来说,这些是持有或传递过程值的框。 sub main是一个容纳使用进入代码的容器吗?如果是这样,为什么当使用表单按钮时它已满?但这里的VB默认未使用且为空?在没有事件值的情况下,我似乎不应该在那里...... ?????
答案 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过程 然后在括号中用其参数列表跟随该名称。 只有在不提供任何参数时才能省略括号。 但是,如果您始终包含,则代码更易读 括号中。