OpCodes.Ldsflda Campo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inserisce l'indirizzo di un campo statico nello stack di valutazione.
public: static initonly System::Reflection::Emit::OpCode Ldsflda;
public static readonly System.Reflection.Emit.OpCode Ldsflda;
staticval mutable Ldsflda : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldsflda As OpCode
Valore del campo
Commenti
La tabella seguente elenca il formato dell'assembly esadecimale e Microsoft Intermediate Language (MSIL), insieme a un breve riepilogo di riferimento:
Formato | Formato assembly | Descrizione |
---|---|---|
7F <T > |
ldsflda field |
Eseguire il push dell'indirizzo nello field stack |
Il comportamento di transizione dello stack, in ordine sequenziale, è:
- L'indirizzo di un campo specifico viene eseguito il push nello stack.
L'istruzione ldsflda
esegue il push dell'indirizzo di un campo statico (condiviso tra tutte le istanze di una classe) nello stack. L'indirizzo può essere rappresentato come puntatore temporaneo (tipo *
) se il token field
di metadati fa riferimento a un tipo la cui memoria è gestita. In caso contrario, corrisponde a un puntatore non gestito (tipo native int
). Si noti che field
può essere un globale statico con un indirizzo virtuale assegnato (offset del campo dall'indirizzo di base in cui viene caricato il file PE contenente) in cui la memoria non viene gestita.
L'istruzione ldsflda
può avere un Volatile prefisso.
MissingFieldException viene generato se il campo non viene trovato nei metadati. Questa operazione viene in genere controllata quando le istruzioni MSIL (Microsoft Intermediate Language) vengono convertite in codice nativo, non in fase di esecuzione.
L'overload del metodo seguente Emit può usare il ldsflda
codice opcode: