2010-10-13 4 views

ответ

3

Нет никакой разницы.

Цитата из spec (2003 спецификации, но так же в 2010 году спецификации, как можно скачать here):

типов массивов указаны путем добавления модификатора к существующему имени типа.

Переменная может также быть объявлена ​​как тип массива, помещая модификатор типа массива или модификатор инициализации массива на имя переменной.

Для ясности недействительно иметь модификатор типа массива как для имени переменной, так и для имени типа в том же самом объявлении.

И ниже образец из спецификации, которая показывает все варианты:

Module Test 
    Sub Main() 
     Dim a1() As Integer ' Declares 1-dimensional array of integers. 
     Dim a2(,) As Integer ' Declares 2-dimensional array of integers. 
     Dim a3(,,) As Integer ' Declares 3-dimensional array of integers. 

     Dim a4 As Integer() ' Declares 1-dimensional array of integers. 
     Dim a5 As Integer(,) ' Declares 2-dimensional array of integers. 
     Dim a6 As Integer(,,) ' Declares 3-dimensional array of integers. 

     ' Declare 1-dimensional array of 2-dimensional arrays of integers 
     Dim a7()(,) As Integer 
     ' Declare 2-dimensional array of 1-dimensional arrays of integers. 
     Dim a8(,)() As Integer 

     Dim a9() As Integer() ' Not allowed. 
    End Sub 
End Module 

И, как можно увидеть в комментариях, А1 и А4 делает то же самое.

4

Это то же самое. Вы можете проверить, просмотрев скомпилированный код в отражателе или написав этот код в среде IDE, а затем наведите указатель мыши на каждый.

Они сообщили, как «var1() как байт» и «var2() в качестве байта»

даже если первый был объявлен с альтернативным синтаксисом.

Смежные вопросы