OpCodes.Unbox_Any 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.
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 de linguagem intermediária da Microsoft (MSIL) da instrução, juntamente com um breve resumo de referência:
Formato | Formato de assembly | Descrição |
---|---|---|
A5 <T > |
unbox.any typeTok |
Extraia os dados de obj , sua representação em caixa. |
O comportamento de transição da pilha, em ordem sequencial, é:
Uma referência de objeto
obj
é enviada por push para a pilha.A referência de objeto é exibida da pilha e desacomparada para o tipo especificado na instrução.
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 instrução unbox.any
extrai o valor contido em obj
(do tipo O
) e, portanto, é equivalente a unbox
seguido por ldobj
.
Quando aplicada a um tipo de referência, a instrução unbox.any
tem o mesmo efeito que castclass
typeTok
.
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á gerada se obj
não for um tipo de caixa.
NullReferenceException será gerada se obj
for uma referência nula.
A seguinte sobrecarga do método Emit pode usar o unbox.any
opcode: