OpCodes.Ldobj Veld

Definitie

Kopieert het waardetypeobject waarnaar wordt verwezen door een adres boven aan de evaluatiestack.

public: static initonly System::Reflection::Emit::OpCode Ldobj;
public static readonly System.Reflection.Emit.OpCode Ldobj;
 staticval mutable Ldobj : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldobj 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 Beschrijving
71 <T> ldobj class Kopieer het exemplaar van het waardetype class naar de stack.

Het overgangsgedrag van de stack, in opeenvolgende volgorde, is:

  1. Het adres van een waardetypeobject wordt naar de stapel gepusht.

  2. Het adres wordt uit de stack weergegeven en het exemplaar op dat specifieke adres wordt opgezoekd.

  3. De waarde van het object dat op dat adres is opgeslagen, wordt naar de stapel gepusht.

De ldobj instructie wordt gebruikt om een waardetype als parameter door te geven.

De ldobj instructie kopieert de waarde die wordt verwezen door addrOfValObj (van het type &, *of native int) naar de bovenkant van de stapel. Het aantal gekopieerde bytes is afhankelijk van de grootte van de klasse (zoals opgegeven door de class parameter). De class parameter is een metagegevenstoken dat het waardetype vertegenwoordigt.

De werking van de ldobj instructie kan worden gewijzigd door een direct voorafgaande Volatile of Unaligned voorvoegselinstructie.

TypeLoadException wordt gegenereerd als klasse niet kan worden gevonden. Dit wordt meestal gedetecteerd wanneer de instructie Microsoft Tussenliggende taal (MSIL) wordt geconverteerd naar systeemeigen code in plaats van tijdens runtime.

De volgende Emit overbelasting van de methode kan de ldobj opcode gebruiken:

Van toepassing op