OpCodes.Isinst Pole

Definice

Testuje, zda je odkaz na objekt (typ O) instance konkrétní třídy.

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 

Hodnota pole

Poznámky

Následující tabulka uvádí šestnáctkový formát sestavení jazyka MSIL (Intermediate Language) a Microsoft s stručným přehledem referenčních informací:

Formát Formát sestavení Description
75 <T> isinst class Testuje, zda je odkaz na objekt instance class, vrací buď nulový odkaz, nebo instanci této třídy nebo rozhraní.

Přechodné chování zásobníku v sekvenčním pořadí je:

  1. Odkaz na objekt se nasdílí do zásobníku.

  2. Odkaz na objekt se zobrazí ze zásobníku a otestuje se, zda se jedná o instanci třídy předané class.

  3. Výsledek (odkaz na objekt nebo odkaz null) se vloží do zásobníku.

Class je token metadat označující požadovanou třídu. Pokud třída objektu v horní části zásobníku implementuje class (pokud class je rozhraní) nebo je odvozenou třídou (pokud class je běžná třída class ), přetypuje se na typ class a výsledek se nasdílí do zásobníku, stejně jako kdyby Castclass byl volána. V opačném případě se do zásobníku vloží nulový odkaz. Pokud samotný odkaz na objekt je odkaz null, vrátí isinst podobně nulový odkaz.

TypeLoadException je vyvolán, pokud nelze najít třídu. To se obvykle zjistí, když se instrukce jazyka MSIL (Microsoft Intermediate Language) místo za běhu převedou na nativní kód.

Emit Následující přetížení metody může použít isinst opcode:

Platí pro