Dim a As String()
Dim b() As String
有人说a是一种字符串阵列
另一个不太清楚。它们完全等同吗?
为什么是两种方式?
我想第一种方法是说a是一个字符串数组,而不仅仅是字符串。
我不太确定Dim b((作为字符串的推理
我试了一下。结果是b是一个String((,它什么都不指向。
a是一个整数,其值为-1
我很困惑。
为什么?
在函数中,我们声明函数接受一个具有类似的数组
Protected Overrides Async Function createNormalLimitOrderMultiple(orderList As BasicSimpleOrder()) As Task
这里,BasicSimpleOrder((只是简单地告诉orderList的类型是BasicSimpreOrder((,而不是BasicSimple Order。
那么为什么Dim a As String()
不能在中工作呢
在大多数情况下,您可以一视同仁,但也有一些差异。
数组大小:如果将括号放在类型后面,则不能指定数组的上限,否则将收到错误。
Dim foo As String(1) ' Compilation Error: Array bounds cannot appear in type specifiers.
属性定义:如果将括号放在属性名称之后,则无法定义数组。原因是您可以选择在特性名称定义后包含圆括号,然后在圆括号内包含参数列表。
Public Class MyClass
Public Property Property1() As String ' not an array
Public Property Property2 As String() ' this is an array
End Class
以下是有关Visual Basic.NET中属性语句的文档:https://learn.microsoft.com/en-us/dotnet/visual-basic/language-reference/statements/property-statement