OpCodes.Unbox_Any Pole
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Konwertuje skrzynkową reprezentację typu określonego w instrukcji na formularz bez skrzynki odbiorczej.
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
Wartość pola
Uwagi
W poniższej tabeli wymieniono format zestawu szesnastkowy i microsoft intermediate language (MSIL) instrukcji wraz z krótkim podsumowaniem referencyjnym:
Format | Format zestawu | Opis |
---|---|---|
A5 <T > |
unbox.any typeTok |
Wyodrębnij dane z obj , jego reprezentację w polu. |
Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:
Odwołanie do obiektu
obj
jest wypychane do stosu.Odwołanie do obiektu jest zwinięte ze stosu i rozpakowane do typu określonego w instrukcji.
Wynikowe odwołanie do obiektu lub typ wartości jest wypychany do stosu.
Po zastosowaniu do formularza wartości typu wartości instrukcja unbox.any
wyodrębnia wartość zawartą w obj
(typu O
), a zatem jest równoważna unbox
, a następnie ldobj
.
W przypadku zastosowania do typu odwołania instrukcja unbox.any
ma taki sam efekt jak castclass
typeTok
.
Jeśli operand typeTok
jest parametrem typu ogólnego, zachowanie środowiska uruchomieniowego jest określane przez typ określony dla tego parametru typu ogólnego.
InvalidCastException jest zgłaszany, jeśli obj
nie jest typem pola.
NullReferenceException jest zgłaszana, jeśli obj
jest odwołaniem o wartości null.
Następujące przeciążenie metody Emit może używać unbox.any
opcode: