Freigeben über


Gewusst wie: Zuweisen eines Arrays zu einem anderen Array (Visual Basic)

Da Arrays Objekte sind, können Sie sie in Zuordnungsanweisungen wie anderen Objekttypen verwenden. Eine Arrayvariable enthält einen Zeiger auf die Daten, die die Arrayelemente bilden, sowie die Rang- und Längeninformationen, und eine Zuordnung kopiert nur diesen Zeiger.

So weisen Sie einem anderen Array ein Array zu

  1. Stellen Sie sicher, dass die beiden Arrays denselben Rang (Anzahl der Dimensionen) und kompatible Elementdatentypen aufweisen.

  2. Verwenden Sie eine Standardzuweisungsanweisung, um das Quellarray dem Zielarray zuzuweisen. Folgen Sie keinem Arraynamen mit Klammern.

    Dim formArray() As System.Windows.Forms.Form
    Dim controlArray() As System.Windows.Forms.Control
    controlArray = formArray
    

Wenn Sie ein Array einem anderen zuweisen, gelten die folgenden Regeln:

  • Gleich Rangfolgen. Der Rang (Anzahl der Dimensionen) des Zielarrays muss mit dem des Quellarrays übereinstimmen.

    Wenn die Rangfolgen der beiden Arrays gleich sind, müssen die Dimensionen nicht gleich sein. Die Anzahl der Elemente in einer bestimmten Dimension kann sich während der Zuordnung ändern.

  • Elementtypen. Beide Arrays müssen Referenztypelemente aufweisen , oder beide Arrays müssen Werttypelemente aufweisen. Weitere Informationen finden Sie unter Value Types and Reference Types.

    • Wenn beide Arrays Werttypelemente aufweisen, müssen die Elementdatentypen genau gleich sein. Die einzige Ausnahme besteht darin, dass Sie einem Array des Basistyps Enum ein Array von Enum-Elementen zuweisen können.

    • Wenn beide Arrays Referenztypelemente aufweisen, muss der Quellelementtyp vom Zielelementtyp abgeleitet werden. Wenn dies der Fall ist, weisen die beiden Arrays dieselbe Vererbungsbeziehung wie ihre Elemente auf. Dies wird als Arraykovarianz bezeichnet.

Der Compiler meldet einen Fehler, wenn die oben genannten Regeln verletzt werden, z. B. wenn die Datentypen nicht kompatibel sind oder die Rangfolgen ungleich sind. Sie können der Codebehandlung Fehler hinzufügen, um sicherzustellen, dass die Arrays kompatibel sind, bevor Sie eine Zuordnung versuchen. Sie können auch das TryCast-Operator-Schlüsselwort verwenden, wenn Sie vermeiden möchten, eine Ausnahme auszuwerfen.

Siehe auch