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 instrukcji i microsoft intermediate language (MSIL) wraz z krótkim podsumowaniem referencyjnym:
Format | Format zestawu | Opis |
---|---|---|
75 <T > |
isinst class |
Sprawdza, czy odwołanie do obiektu jest wystąpieniem class klasy , 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 przetestowane, aby sprawdzić, czy jest to wystąpienie klasy przekazanej w
class
elemencie .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ą pochodną (jeśli class
jest zwykłą klasą class
), jest rzutowana do typuclass
, a wynik jest wypychany na stos, dokładnie tak, jakby Castclass został wywołany. W przeciwnym razie na stosie jest wypychane odwołanie o wartości null. Jeśli odwołanie do obiektu jest odwołaniem o wartości null, isinst
zwraca również odwołanie o wartości null.
TypeLoadException jest zgłaszany, jeśli nie można odnaleźć klasy. Zwykle jest to wykrywane, gdy instrukcje języka Microsoft Intermediate Language (MSIL) są konwertowane na kod natywny, a nie w czasie wykonywania.
Emit Następujące przeciążenie metody może używać isinst
kodu opcode: