Megosztás a következőn keresztül:


Útmutató: Tömb hozzárendelése egy másik tömbhöz (Visual Basic)

Mivel a tömbök objektumok, más objektumtípusokhoz hasonló hozzárendelési utasításokban is használhatja őket. A tömbváltozó a tömbelemeket alkotó adatokra, valamint a rang- és hosszadatokra mutató mutatót tárol, és a hozzárendelés csak ezt a mutatót másolja.

Tömb hozzárendelése egy másik tömbhöz

  1. Győződjön meg arról, hogy a két tömb azonos rangot (dimenziók számát) és kompatibilis elemadattípusokat használ.

  2. A forrástömböt egy szabványos hozzárendelési utasítással rendelheti hozzá a céltömbhöz. Ne kövesse egyik tömbnevet sem zárójelekkel.

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

Amikor egy tömböt rendel egy másikhoz, a következő szabályok érvényesek:

  • Egyenlő rangok. A céltömb rangjának (dimenziószámának) meg kell egyeznie a forrástömb rangsorával.

    Feltéve, hogy a két tömb rangja egyenlő, a dimenzióknak nem kell egyenlőnek lenniük. Egy adott dimenzió elemeinek száma változhat a hozzárendelés során.

  • Elemtípusok. Mindkét tömbnek referenciatípus-elemekkel kell rendelkeznie, vagy mindkét tömbnek értéktípus-elemekkel kell rendelkeznie. További információ: Értéktípusok és referenciatípusok.

    • Ha mindkét tömb értéktípus-elemekkel rendelkezik, az elem adattípusainak pontosan azonosnak kell lenniük. Ez alól az egyetlen kivétel, hogy egy elemtömböt Enum rendelhet hozzá az adott Enumalaptípusú tömbhöz.

    • Ha mindkét tömb hivatkozástípus-elemekkel rendelkezik, a forráselem típusának a célelem típusából kell származnia. Ebben az esetben a két tömb öröklési kapcsolata megegyezik az elemeikkel. Ezt tömbkvarianciának nevezzük.

A fordító hibát jelez, ha a fenti szabályok sérülnek, például ha az adattípusok nem kompatibilisek, vagy a rangsorok egyenlőtlenek. Hibakezelést adhat a kódhoz, hogy a tömbök kompatibilisek legyenek a hozzárendelés megkísérlése előtt. A TryCast Operátor kulcsszót is használhatja, ha el szeretné kerülni a kivételt.

Lásd még