OpCodes.Stloc Campo
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Exibe o valor atual na parte superior da pilha de avaliação e o armazena na lista de variáveis locais em um índice especificado.
public: static initonly System::Reflection::Emit::OpCode Stloc;
public static readonly System.Reflection.Emit.OpCode Stloc;
staticval mutable Stloc : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stloc As OpCode
Valor do campo
Comentários
A tabela a seguir lista o formato de assembly hexadecimal e MSIL (Microsoft Intermediate Language) da instrução, juntamente com um breve resumo de referência:
Formatar | Formato de assembly | Descrição |
---|---|---|
FE 0E <unsigned int16 > |
Stloc index |
Exibe um valor da pilha e o armazena na variável index local . |
O comportamento de transição da pilha, em ordem sequencial, é:
- Um valor é retirado da pilha e colocado na variável
index
local .
A stloc
instrução exibe o valor superior da pilha de avaliação e move-o para o número index
de variável local , em que as variáveis locais são numeradas 0 em diante. O tipo do valor deve corresponder ao tipo da variável local, conforme especificado na assinatura local do método atual.
Armazenar em locais que contêm um valor inteiro menor que 4 bytes de comprimento trunca o valor conforme ele se move da pilha para a variável local. Os valores de ponto flutuante são arredondados de seu tamanho nativo (tipo F
) para o tamanho associado ao argumento .
As instruções corretas da MSIL (Linguagem Intermediária da Microsoft) exigem que index
seja um índice local válido. Para a stloc
instrução, index
deve estar no intervalo de 0 a 65534 inclusive (especificamente, 65535 não é válido). O motivo para excluir o 65535 é pragmático: as implementações prováveis usarão um inteiro de 2 bytes para acompanhar o índice de um local, bem como o número total de locais para um determinado método. Se um índice de 65535 tivesse sido válido, seria necessário um inteiro mais amplo para acompanhar o número de locais nesse método.
As seguintes Emit sobrecargas de método podem usar o stloc
opcode: