Aracılığıyla paylaş


OpCodes.Box Alan

Tanım

Bir değer türünü nesne başvurusuna (tür O) dönüştürür.

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 

Alan Değeri

Açıklamalar

Aşağıdaki tabloda, yönergenin onaltılık ve Microsoft Ara Dil (MSIL) derleme biçiminin yanı sıra kısa bir başvuru özeti listelenmiştir:

Biçimlendir Derleme Biçimi Description
8C <T> Kutusu valTypeToken Bir değer türünü (içinde valTypeTokenbelirtilen türde) gerçek nesne başvurusuna dönüştürün.

Sıralı sırada yığın geçiş davranışı şu şekildedir:

  1. Değer türü yığına gönderilir.

  2. Değer türü yığından çıkarılır; işlemi box gerçekleştirilir.

  3. Sonuçta elde edilen "kutulanmış" değer türüne bir nesne başvurusu yığına gönderilir.

Bir değer türünün Ortak Dil Altyapısı (CLI) içinde iki ayrı gösterimi vardır:

  • Bir değer türü başka bir nesneye veya yığına katıştırıldığında kullanılan bir 'ham' form.

  • Değer türündeki verilerin bağımsız bir varlık olarak var olabilmesi için bir nesneye sarmalandığı (kutulandığı) 'kutulanmış' form.

Yönerge, box 'ham' (kutulanmamış) değer türünü nesne başvurusuna (tür O) dönüştürür. Bu, yeni bir nesne oluşturup değer türünden verileri yeni ayrılan nesneye kopyalayarak gerçekleştirilir. valTypeToken , yığındaki değer türünün türünü gösteren bir meta veri belirtecidir.

OutOfMemoryException isteği karşılamak için yeterli bellek yoksa oluşturulur.

TypeLoadException sınıfı bulunamazsa oluşturulur. Bu durum genellikle Microsoft Ara Dili (MSIL) çalışma zamanında değil yerel koda dönüştürüldüğünde algılanır.

Aşağıdaki Emit yöntem aşırı yüklemesi opcode'unu box kullanabilir:

Şunlara uygulanır