OpCodes.Ldflda Pole

Definice

Vyhledá adresu pole v objektu, jehož odkaz je aktuálně ve zkušebním zásobníku.

public: static initonly System::Reflection::Emit::OpCode Ldflda;
public static readonly System.Reflection.Emit.OpCode Ldflda;
 staticval mutable Ldflda : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldflda As OpCode 

Hodnota pole

OpCode

Poznámky

V následující tabulce je uveden šestnáctkový formát sestavení jazyka MSIL (Microsoft Intermediate Language) a stručný přehled referenčních informací:

Formát Formát sestavení Description
7C < T > ldflda field Nasdílí adresu field v zadaném objektu do zásobníku.

Přechodné chování zásobníku v sekvenčním pořadí je:

  1. Odkaz na objekt (nebo ukazatel) je vložen do zásobníku.

  2. Odkaz na objekt (nebo ukazatel) se rozbalí ze zásobníku; adresa zadaného pole v objektu je nalezena.

  3. Adresa zadaného pole se nasdílí do zásobníku.

Instrukce ldflda nasdílí adresu pole umístěného v objektu do zásobníku. Objekt musí být v zásobníku jako odkaz na objekt (typ O), spravovaný ukazatel (typ &), nespravovaný ukazatel (typ native int), přechodný ukazatel (typ *) nebo instanci typu hodnoty. Použití nespravovaného ukazatele není v ověřitelném kódu povoleno. Pole objektu je určeno tokenem metadat, který musí odkazovat na člena pole.

Hodnota vrácená ldflda je spravovaným ukazatelem (typem &), pokud není objekt vložen do zásobníku jako nespravovaný ukazatel, v takovém případě je vrácená adresa také nespravovaným ukazatelem (typem native int).

Instrukce ldflda může předcházet buď nebo obě předpony Unaligned a Volatile předpony.

InvalidOperationException je vyvolána, pokud objekt není v doméně aplikace, ze které se přistupuje. Adresu pole, které není uvnitř domény aplikace pro přístup, nelze načíst.

NullReferenceException je vyvolán, pokud je objekt null a pole není statické.

MissingFieldException je vyvolán, pokud zadané pole není nalezeno v metadatech. Obvykle se kontroluje, když se pokyny jazyka MSIL (Microsoft Intermediate Language) převedou na nativní kód, ne za běhu.

Emit Následující přetížení metody může použít ldflda opcode:

Platí pro