Поделиться через


Инициализатор массива не может быть указан для измерения, не являющегося константой, используйте пустой инициализатор "{}"

Обновлен: Ноябрь 2007

Array initializer cannot be specified for a non constant dimension; use the empty initializer '{}'

Массив инициализирует измерение, неизвестное во время компиляции.

Следующий код вызывает эту ошибку.

Dim j As Integer
Dim intArray As Integer = New Integer(1, j) {{0, 100}, {1,101}}

Следующий код используется, чтобы избежать ошибки.

Dim intArray As Integer = New Integer(1, j) {}
For i As Integer = 0 To j
    intArray(0, i) = i
    intArray(1, i) = 100 + i
Next i

Идентификатор ошибки: BC30949

Исправление этой ошибки

  • Если это возможно, укажите константу измерения в объявлении массива.

  • Если невозможно указать константу измерения, необходимо инициализировать массив при помощи цикла, когда станет известно неконстантное измерение.

См. также

Задачи

Практическое руководство. Инициализация переменной типа массива

Практическое руководство. Инициализация многомерного массива

Основные понятия

Обзор массивов в Visual Basic

Ссылки

Инструкция For Each... Next (Visual Basic)