我在工作中查看了一些遗留代码,并且我想知道这两个属性之间的区别是什么:
Public Property HasUsedCopies() As Boolean
Public Property HasUsedCopies As Boolean
使用VB.NET到C#代码转换器,它们是相同的:
public bool HasUsedCopies { get; set; }
括号表示什么?
答案 0 :(得分:3)
如果您查看Visual Basic Language Specification under section 9.7:属性:
PropertyMemberDeclaration ::=
[ Attributes ] [ PropertyModifier+ ] Property Identifier
[ ( [ ParameterList ] ) ] [ As TypeName ] [ ImplementsClause ]
LineTerminator
[ PropertyAccessorDeclaration+ ]
[ End Property LineTerminator ]
PropertyModifier ::= ProcedureModifier | Default | ReadOnly | WriteOnly
PropertyAccessorDeclaration ::=
PropertyGetDeclaration |
PropertySetDeclaration
在这里,您可以看到参数列表以及括号中的括号都是可选的:
[ ( [ ParameterList ] ) ]
因此括号可以省略,因此两个陈述都是等价的。