OpCodes.Box 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 typ wartości na odwołanie do obiektu (typ O
).
public: static initonly System::Reflection::Emit::OpCode Box;
public static readonly System.Reflection.Emit.OpCode Box;
staticval mutable Box : System.Reflection.Emit.OpCode
Public Shared ReadOnly Box 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 |
---|---|---|
8C <T > |
Pole valTypeToken |
Przekonwertuj typ wartości (typu określonego w valTypeToken ) na prawdziwe odwołanie do obiektu. |
Zachowanie przejściowe stosu w kolejności sekwencyjnej to:
Typ wartości jest wypychany do stosu.
Typ wartości jest zwinięty ze stosu; wykonywana
box
jest operacja.Odwołanie do wynikowego typu wartości "boxed" jest wypychane do stosu.
Typ wartości ma dwie oddzielne reprezentacje w ramach infrastruktury języka wspólnego (CLI):
Formularz "nieprzetworzony" używany, gdy typ wartości jest osadzony w innym obiekcie lub na stosie.
Formularz "boxed", w którym dane w typie wartości są opakowane (pola) do obiektu, aby mogły istnieć jako niezależna jednostka.
Instrukcja box
konwertuje typ wartości "raw" (unboxed) na odwołanie do obiektu (typ O
). Jest to realizowane przez utworzenie nowego obiektu i skopiowanie danych z typu wartości do nowo przydzielonego obiektu.
valTypeToken
to token metadanych wskazujący typ typu wartości na stosie.
OutOfMemoryException jest zgłaszany, jeśli ilość pamięci jest niewystarczająca do spełnienia żądania.
TypeLoadException jest zgłaszany, jeśli nie można odnaleźć klasy. Zazwyczaj jest to wykrywane, gdy język Microsoft Intermediate Language (MSIL) jest konwertowany na kod natywny, a nie w czasie wykonywania.
Następujące Emit przeciążenie metody może używać box
kodu opcode: