OpCodes.Stloc Campo

Definição

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 indexlocal .

O comportamento de transição da pilha, em ordem sequencial, é:

  1. Um valor é retirado da pilha e colocado na variável indexlocal .

A stloc instrução exibe o valor superior da pilha de avaliação e move-o para o número indexde 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:

Aplica-se a