配列はオブジェクトであるため、他のオブジェクト型と同様に代入ステートメントで使用できます。 配列変数は、配列要素とランクと長さの情報を構成するデータへのポインターを保持し、代入はこのポインターのみをコピーします。
ある配列を別の配列に割り当てるには
2 つの配列のランク (次元数) と互換性のある要素データ型が同じであることを確認します。
標準の代入ステートメントを使用して、コピー元の配列をコピー先の配列に割り当てます。 どちらの配列名にもかっこを付けないでください。
Dim formArray() As System.Windows.Forms.Form Dim controlArray() As System.Windows.Forms.Control controlArray = formArray
ある配列を別の配列に割り当てると、次の規則が適用されます。
等しいランク。 コピー先配列のランク (次元数) は、ソース配列のランクと同じである必要があります。
2 つの配列のランクが等しい場合、次元を等しくする必要はありません。 特定のディメンション内の要素の数は、割り当て中に変更される可能性があります。
要素の型。 両方の配列に 参照型 要素が必要か、両方の配列に 値型 要素が必要です。 詳細については、「 値の型と参照型」を参照してください。
両方の配列に値型要素がある場合、要素のデータ型はまったく同じである必要があります。 唯一の例外は、その
Enum
の基本型の配列にEnum
要素の配列を割り当てることができるということです。両方の配列に参照型要素がある場合、ソース要素の型は変換先の要素型から派生する必要があります。 この場合、2 つの配列は要素と同じ継承関係を持ちます。 これは配列 共分散と呼ばれます。
上記の規則に違反した場合 (データ型に互換性がない場合やランクが等しくない場合など) は、コンパイラによってエラーが報告されます。 割り当てを試みる前に、コードにエラー処理を追加して、配列に互換性があることを確認できます。 例外をスローしないようにする場合は、 TryCast Operator キーワードを使用することもできます。
こちらも参照ください
.NET