配列初期化子は非定数の次元に指定することはできません。空の初期化子 '{}' を使用してください。

更新 : 2007 年 11 月

コンパイル時に不確定である次元が配列によって初期化されます。

このエラーが発生するコード例を次に示します。

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

Error ID: BC30949

このエラーを解決するには

  • 可能な場合は、配列宣言に定数の次元を指定します。

  • 定数の次元を指定できない場合は、定数ではない次元が確定される時点でループを使って配列を初期化する必要があります。

参照

処理手順

方法 : 配列変数を初期化する

方法 : 多次元配列を初期化する

概念

Visual Basic の配列の概要

参照

For Each...Next ステートメント (Visual Basic)