Procedure: Eén matrix toewijzen aan een andere matrix (Visual Basic)
Omdat matrices objecten zijn, kunt u ze gebruiken in toewijzingsinstructies zoals andere objecttypen. Een matrixvariabele bevat een aanwijzer naar de gegevens die de matrixelementen en de rang- en lengtegegevens vormen en een toewijzing kopieert alleen deze aanwijzer.
Eén matrix toewijzen aan een andere matrix
Zorg ervoor dat de twee matrices dezelfde rang hebben (aantal dimensies) en compatibele elementgegevenstypen.
Gebruik een standaardtoewijzingsinstructie om de bronmatrix toe te wijzen aan de doelmatrix. Volg geen van beide matrixnamen met haakjes.
Dim formArray() As System.Windows.Forms.Form Dim controlArray() As System.Windows.Forms.Control controlArray = formArray
Wanneer u een matrix aan een andere matrix toewijst, zijn de volgende regels van toepassing:
Gelijke rangschikkingen. De rang (het aantal dimensies) van de doelmatrix moet gelijk zijn aan die van de bronmatrix.
Mits de rangschikkingen van de twee matrices gelijk zijn, hoeven de dimensies niet gelijk te zijn. Het aantal elementen in een bepaalde dimensie kan tijdens de toewijzing veranderen.
Elementtypen. Beide matrices moeten verwijzingstypeelementen hebben of beide matrices moeten waardetypeelementen hebben. Zie Waardetypen en referentietypen voor meer informatie.
Als beide matrices waardetypeelementen hebben, moeten de gegevenstypen van het element exact hetzelfde zijn. De enige uitzondering hierop is dat u een matrix met
Enum
elementen kunt toewijzen aan een matrix van het basistype hiervanEnum
.Als beide matrices verwijzingstype-elementen hebben, moet het bronelementtype zijn afgeleid van het doelelementtype. Als dit het geval is, hebben de twee matrices dezelfde overnamerelatie als hun elementen. Dit wordt matrixcovariantie genoemd.
De compiler meldt een fout als de bovenstaande regels worden geschonden, bijvoorbeeld als de gegevenstypen niet compatibel zijn of de rangschikkingen ongelijk zijn. U kunt foutafhandeling toevoegen aan uw code om ervoor te zorgen dat de matrices compatibel zijn voordat u een toewijzing probeert uit te voeren. U kunt ook het trefwoord TryCast Operator gebruiken als u wilt voorkomen dat er een uitzondering wordt gegenereerd.