OpCodes.Ldobj Fält
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Kopierar värdetypsobjektet som pekas på av en adress överst i utvärderingsstacken.
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
Fältvärde
Kommentarer
I följande tabell visas instruktionens sammansättningsformat för hexadecimalt och Microsoft mellanliggande språk (MSIL), tillsammans med en kort referenssammanfattning:
| Format | Sammansättningsformat | Description |
|---|---|---|
71 <T> |
ldobj class |
Kopiera instansen av värdetypen class till stacken. |
Stackens övergångsbeteende i sekventiell ordning är:
Adressen till ett värdetypsobjekt skickas till stacken.
Adressen poppas från stacken och instansen på den specifika adressen har sökts upp.
Värdet för objektet som lagras på den adressen skickas till stacken.
Instruktionen ldobj används för att skicka en värdetyp som en parameter.
Instruktionen ldobj kopierar värdet som pekar på addrOfValObj (av typen &, *, eller native int) överst i stacken. Antalet byte som kopieras beror på klassens storlek (enligt parametern class ). Parametern class är en metadatatoken som representerar värdetypen.
Instruktionens ldobj funktion kan ändras genom en direkt föregående Volatile instruktion eller Unaligned prefixinstruktion.
TypeLoadException genereras om det inte går att hitta klassen. Detta identifieras vanligtvis när instruktionen Microsoft mellanliggande språk (MSIL) konverteras till intern kod i stället för vid körning.
Följande Emit metodöverlagring kan använda ldobj opcode: