OpCodes.Box Feld

Definition

Konvertiert einen Werttyp in einen Objektverweis (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 

Feldwert

Hinweise

In der folgenden Tabelle sind das Hexadezimal- und Microsoft MSIL-Assemblyformat (Intermediate Language) der Anweisung zusammen mit einer kurzen Referenzzusammenfassung aufgeführt:

Format Assemblyformat Description
8C <T> Box valTypeToken Konvertieren Sie einen Werttyp (des in valTypeToken) angegebenen Typs in einen echten Objektverweis.

Das Übergangsverhalten des Stapels in sequenzieller Reihenfolge lautet:

  1. Ein Werttyp wird auf den Stapel verschoben.

  2. Der Werttyp wird aus dem Stapel angezeigt; der box Vorgang wird ausgeführt.

  3. Ein Objektverweis auf den resultierenden Werttyp "boxed" wird auf den Stapel verschoben.

Ein Werttyp verfügt über zwei separate Darstellungen innerhalb der Common Language Infrastructure (CLI):

  • Ein "rohes" Formular, das verwendet wird, wenn ein Werttyp in ein anderes Objekt oder auf dem Stapel eingebettet ist.

  • Ein "Boxed"-Formular, in dem die Daten im Werttyp in ein Objekt eingeschlossen werden, sodass sie als unabhängige Entität vorhanden sein können.

Mit der box Anweisung wird der Werttyp "raw" (unboxed) in einen Objektverweis (Typ O) konvertiert. Dazu wird ein neues Objekt erstellt und die Daten aus dem Werttyp in das neu zugeordnete Objekt kopiert. valTypeToken ist ein Metadatentoken, das den Typ des Werttyps im Stapel angibt.

OutOfMemoryException wird ausgelöst, wenn nicht genügend Arbeitsspeicher vorhanden ist, um die Anforderung zu erfüllen.

TypeLoadException wird ausgelöst, wenn die Klasse nicht gefunden werden kann. Dies wird in der Regel erkannt, wenn Microsoft Intermediate Language (MSIL) nicht zur Laufzeit, sondern in systemeigenen Code konvertiert wird.

Die folgende Emit Methodenüberladung kann den box Opcode verwenden:

Gilt für: