OpCodes.Unbox_Any Campo

Definição

Converte a representação em caixa de um tipo especificado na instrução em seu formulário sem caixa.

public: static initonly System::Reflection::Emit::OpCode Unbox_Any;
public static readonly System.Reflection.Emit.OpCode Unbox_Any;
 staticval mutable Unbox_Any : System.Reflection.Emit.OpCode
Public Shared ReadOnly Unbox_Any As OpCode 

Valor do campo

Comentários

A tabela a seguir lista o formato de assembly hexadecimal e Microsoft idioma intermediário (MSIL) da instrução, juntamente com um breve resumo de referência:

Formato Formato de assembly Description
A5 <T> unbox.any typeTok Extraia os dados de objsua representação em caixa.

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

  1. Uma referência obj de objeto é enviada por push para a pilha.

  2. A referência de objeto é exibida da pilha e desacomparada para o tipo especificado na instrução.

  3. O tipo de valor ou referência de objeto resultante é enviado por push para a pilha.

Quando aplicado à forma em caixa de um tipo de valor, a unbox.any instrução extrai o valor contido dentro obj (do tipo O) e, portanto, é equivalente a unbox seguido por ldobj.

Quando aplicada a um tipo de referência, a unbox.any instrução tem o mesmo efeito que castclasstypeTok.

Se o operando typeTok for um parâmetro de tipo genérico, o comportamento do runtime será determinado pelo tipo especificado para esse parâmetro de tipo genérico.

InvalidCastException será gerado se obj não for um tipo de caixa.

NullReferenceException será gerado se obj for uma referência nula.

A sobrecarga do método Emit a seguir pode usar o unbox.any opcode:

Aplica-se a