OpCodes.Stelem_Ref Veld
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vervangt het matrixelement in een bepaalde index door de objectverwwaarde (type O) op de evaluatiestack.
public: static initonly System::Reflection::Emit::OpCode Stelem_Ref;
public static readonly System.Reflection.Emit.OpCode Stelem_Ref;
staticval mutable Stelem_Ref : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stelem_Ref As OpCode
Waarde van veld
Opmerkingen
De volgende tabel bevat de hexadecimale en Microsoft MSIL-assembly-indeling (Tussenliggende taal), samen met een beknopt overzicht:
| Format | Assembly-indeling | Description |
|---|---|---|
| A2 | stelem.ref | Vervangt een matrixelement in de opgegeven index door de ref waarde (type O) op de stack. |
Het overgangsgedrag van de stack, in opeenvolgende volgorde, is:
Een objectverwijzing naar een matrix,
arraywordt naar de stapel gepusht.Er wordt een geldige index naar een element
arrayin de stapel gepusht.Een waarde wordt naar de stapel gepusht.
De waarde, de index en de matrixreferentie worden uit de stack gepopt; de waarde wordt in het matrixelement op de opgegeven index geplaatst.
De stelem.ref instructie vervangt de waarde van het element op de opgegeven index in de eendimensionale matrix array door de ref (type O) waarde die naar de stapel wordt gepusht.
Matrices zijn objecten en dus vertegenwoordigd door een waarde van het type O. De index is type native int.
Houd er rekening mee dat stelem.ref de opgegeven waarde impliciet wordt omgezet in het elementtype van array voordat de waarde wordt toegewezen aan het matrixelement. Deze cast kan mislukken, zelfs voor geverifieerde code. Dus de stelem.ref instructie kan gooien InvalidCastException. Voor eendimensionale matrices die niet op nul zijn gebaseerd en voor multidimensionale matrices, biedt de Array klasse een SetValue methode.
NullReferenceException wordt gegenereerd als array dit een null-verwijzing is.
IndexOutOfRangeException wordt gegenereerd als index negatief of groter is dan de grens van array.
ArrayTypeMismatchException wordt gegenereerd als array er geen elementen van het vereiste type zijn.
De volgende Emit overbelasting van de methode kan de stelem.ref opcode gebruiken: