OpCodes.Castclass Alan

Tanım

Belirtilen sınıfa başvuru tarafından geçirilen bir nesneyi atamaya çalışır.

public: static initonly System::Reflection::Emit::OpCode Castclass;
public static readonly System.Reflection.Emit.OpCode Castclass;
[System.Runtime.InteropServices.ComVisible(true)]
public static readonly System.Reflection.Emit.OpCode Castclass;
 staticval mutable Castclass : System.Reflection.Emit.OpCode
[<System.Runtime.InteropServices.ComVisible(true)>]
 staticval mutable Castclass : System.Reflection.Emit.OpCode
Public Shared ReadOnly Castclass As OpCode 

Alan Değeri

Öznitelikler

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:

Format Derleme Biçimi Açıklama
74 <T> castclass class Bir nesneyi türünde classyeni bir nesneye dönüştürür.

Sıralı sırada yığın geçiş davranışı şöyledir:

  1. Nesne başvurusu yığına gönderilir.

  2. Nesne başvurusu yığından çıkarılır; başvuruda bulunan nesne, belirtilen classolarak yayınlanır.

  3. Başarılı olursa, yığına yeni bir nesne başvurusu gönderilir.

Yönerge, castclass nesne başvuruyu (tür O) yığının üzerinde belirtilen bir sınıfa atamayı dener. Yeni sınıf, istenen sınıfı gösteren bir meta veri belirteci tarafından belirtilir. Yığının en üstündeki nesnesinin sınıfı yeni sınıfı uygulamazsa (yeni sınıfın bir arabirim olduğu varsayılarak) ve yeni sınıfın türetilmiş bir sınıfı değilse, bir InvalidCastException oluşturulur. Nesne başvurusu null başvuruysa başarılı castclass olur ve yeni nesneyi null başvuru olarak döndürür.

InvalidCastException , obj sınıfa alınamazsa oluşturulur.

TypeLoadException sınıfı bulunamazsa oluşturulur. Bu durum genellikle Microsoft Ara Dil (MSIL) yönergesi ç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 castclass kullanabilir:

Şunlara uygulanır