OpCodes.Ldloc 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.
Carica la variabile locale in corrispondenza di un indice specifico nello stack di valutazione.
public: static initonly System::Reflection::Emit::OpCode Ldloc;
public static readonly System.Reflection.Emit.OpCode Ldloc;
staticval mutable Ldloc : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldloc 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 |
---|---|---|
FE 0C <unsigned int16 > |
ldloc index |
Carica la variabile locale in corrispondenza dell'indice index nello stack. |
Il comportamento di transizione dello stack, in ordine sequenziale, è:
- Il valore della variabile locale in corrispondenza dell'indice specificato viene eseguito il push nello stack.
L'istruzione ldloc
esegue il push del contenuto del numero di variabile locale nello stack di valutazione passato, in cui le variabili locali vengono numerate 0 in avanti. Le variabili locali vengono inizializzate a 0 prima di immettere il metodo solo se il flag inizializzato nel metodo è true. Esistono 65.535 (2^16-1) variabili locali possibili (0-65,534). L'indice 65.535 non è valido poiché probabilmente le implementazioni useranno un intero a 2 byte per tenere traccia di un indice locale, insieme al numero totale di locali per un determinato metodo. Se è stato reso valido un indice di 65535, sarebbe necessario un intero più ampio per tenere traccia del numero di locali in tale metodo.
Le ldloc.0
istruzioni , , ldloc.1
ldloc.2
e ldloc.3
forniscono una codifica efficiente per l'accesso alle prime quattro variabili locali.
Il tipo del valore è lo stesso del tipo della variabile locale, specificata nell'intestazione del metodo. Vedere Partizionamento I. Le variabili locali con dimensioni inferiori a 4 byte vengono espanse per digitare int32
quando vengono caricate nello stack. I valori a virgola mobile vengono espansi alle dimensioni native (tipo F
).
Gli overload del metodo seguenti Emit possono usare il ldloc
codice opcode: