OpCodes.Isinst 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.
Sprawdza, czy odwołanie do obiektu (typ O) jest wystąpieniem określonej klasy.
public: static initonly System::Reflection::Emit::OpCode Isinst;
public static readonly System.Reflection.Emit.OpCode Isinst;
staticval mutable Isinst : System.Reflection.Emit.OpCode
Public Shared ReadOnly Isinst 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 |
|---|---|---|
75 <T> |
isinst class |
Sprawdza, czy odwołanie do obiektu jest wystąpieniem classklasy , zwracając odwołanie o wartości null lub wystąpienie tej klasy lub interfejsu. |
Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:
Odwołanie do obiektu jest wypychane do stosu.
Odwołanie do obiektu jest zwinięte ze stosu i testowane, aby sprawdzić, czy jest to wystąpienie klasy przekazanej w
classelemencie .Wynik (odwołanie do obiektu lub odwołanie o wartości null) jest wypychany do stosu.
Class to token metadanych wskazujący żądaną klasę. Jeśli klasa obiektu w górnej części stosu implementuje class (jeśli class jest interfejsem) lub jest klasą class pochodną (jeśli class jest klasą regularną), jest rzutowana do typu class , a wynik jest wypychany na stos, dokładnie tak, jakby Castclass został wywołany. W przeciwnym razie odwołanie o wartości null jest wypychane na stos. Jeśli odwołanie do obiektu jest odwołaniem o wartości null, isinst podobnie zwraca odwołanie o wartości null.
TypeLoadException jest zgłaszany, jeśli nie można odnaleźć klasy. Jest to zwykle wykrywane, gdy instrukcje języka Microsoft pośredniego (MSIL) są konwertowane na kod natywny, a nie w czasie wykonywania.
Następujące Emit przeciążenie metody może używać isinst kodu opcode: