정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

OpCodes.Isinst 필드

2013-12-13

개체 참조(O 형식)가 특정 클래스의 인스턴스인지 여부를 테스트합니다.

Namespace:  System.Reflection.Emit
어셈블리:  mscorlib(mscorlib.dll)

public static readonly OpCode Isinst

다음 표에서는 명령의 16진수 및 MSIL(Microsoft Intermediate Language) 어셈블리 형식을 간단한 설명과 함께 보여 줍니다.

형식

어셈블리 형식

설명

75 < T >

isinst class

개체 참조가 class의 인스턴스인지 여부를 테스트하고 null 참조나 해당 클래스 또는 인터페이스의 인스턴스를 반환합니다.

다음과 같이 순차적으로 스택 전환 동작이 발생합니다.

  1. 개체 참조가 스택으로 푸시됩니다.

  2. 개체 참조가 스택에서 팝된 다음 class에 전달된 클래스의 인스턴스인지 테스트됩니다.

  3. 결과(개체 참조 또는 null 참조)가 스택으로 푸시됩니다.

Class는 필요한 클래스를 표시하는 메타데이터 토큰입니다. 스택 맨 위에 있는 개체의 클래스가 class를 구현하거나(class가 인터페이스인 경우) class의 파생 클래스인 경우(class가 일반 클래스인 경우), 이 클래스는 Castclass가 호출되었을 때와 동일하게 class 형식으로 캐스팅되고 결과는 스택으로 푸시됩니다. 그렇지 않으면 null 참조가 스택으로 푸시됩니다. 개체 참조 자체가 null 참조인 경우 isinst도 null 참조를 반환합니다.

클래스를 찾을 수 없으면 TypeLoadException이 발생합니다. 이는 일반적으로 런타임에서가 아니라 MSIL 명령이 네이티브 코드로 변환될 때 확인됩니다.

다음 Emit 메서드 오버로드는 isinst opcode를 사용할 수 있습니다.

  • ILGenerator.Emit(OpCode, Type)

Windows Phone OS

지원되는 버전: 8.0, 7.1

Windows Phone

표시: