如何:指派一個陣列至另一個陣列 (Visual Basic)
陣列是物件,因此您可以在指派陳述式中使用,就像其他物件類型一樣。 陣列變數會保存構成陣列元素,以及順位和長度資訊的資料指標,而指派只會複製此指標。
若要將一個陣列指派至另一個陣列
請確定這兩個陣列順位 (維度數目) 相同且元素資料類型也相容。
使用標準指派陳述式,將來源陣列指派給目的地陣列。 請勿在任一陣列名稱後面加上括號。
Dim formArray() As System.Windows.Forms.Form Dim controlArray() As System.Windows.Forms.Control controlArray = formArray
當您將一個陣列指派至另一個陣列時,適用下列規則:
等位。 目的地陣列的順位 (維度數目) 必須與來源陣列的順位相同。
若兩個陣列的順位相同,其維度就不需要相同。 可以在指派期間變更指定維度中的元素數目。
元素類型。 兩個陣列都必須有參考類型元素,或兩個陣列都必須有實值類型元素。 如需詳細資訊,請參閱 Value Types and Reference Types。
如果這兩個陣列都有實值類型元素,則元素資料類型必須完全相同。 唯一的例外是,您可以將
Enum
元素陣列指派給該Enum
的基底類型陣列。如果這兩個陣列都有參考類型元素,則來源元素類型必須衍生自目的地元素類型。 在此情況下,這兩個陣列的繼承關聯性會與其元素相同。 這稱為陣列共變數。
如果違反上述規則,編譯器會回報錯誤,例如資料類型不相容或順位不相同。 您可以在程式碼中新增錯誤處理,以便在嘗試進行指派前確保陣列相容。 如果想避免擲回例外狀況,您也可以使用 TryCast 運算子關鍵字。