Compartilhar via


OpCodes.Stfld Campo

Definição

Substitui o valor armazenado no campo de uma referência de objeto ou de um ponteiro por um novo valor.

public: static initonly System::Reflection::Emit::OpCode Stfld;
public static readonly System.Reflection.Emit.OpCode Stfld;
 staticval mutable Stfld : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stfld 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
7D <T> stfld field Substitui o valor do field objeto por um novo valor.

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

  1. Uma referência de objeto ou ponteiro é enviado por push para a pilha.

  2. Um valor é enviado por push para a pilha.

  3. O valor e a referência/ponteiro do objeto são exibidos da pilha; o valor de field no objeto é substituído pelo valor fornecido.

A stfld instrução substitui o valor de um campo de um objeto (tipo O) ou por meio de um ponteiro (tipo native int, &ou *) por um determinado valor. Field é um token de metadados que se refere a uma referência de membro de campo. A stfld instrução pode ter um prefixo de ou de Unaligned e Volatile.

NullReferenceException será gerado se a referência ou o ponteiro do objeto for uma referência nula e o campo não for estático.

MissingFieldException será gerado se field não for encontrado nos metadados. Isso normalmente é verificado quando a instrução MSIL (Microsoft Intermediate Language) é convertida em código nativo, não em runtime.

Emit A seguinte sobrecarga de método pode usar o stfld opcode:

Aplica-se a