다음을 통해 공유


OpCodes.Mkrefany 필드

정의

특정 형식의 인스턴스에 대한 형식화된 참조를 계산 스택으로 푸시합니다.

public: static initonly System::Reflection::Emit::OpCode Mkrefany;
public static readonly System.Reflection.Emit.OpCode Mkrefany;
 staticval mutable Mkrefany : System.Reflection.Emit.OpCode
Public Shared ReadOnly Mkrefany As OpCode 

필드 값

설명

다음 표에서는 간단한 참조 요약과 함께 명령의 16진수 및 MSIL(Microsoft Intermediate Language) 어셈블리 형식을 나열합니다.

서식 어셈블리 형식 Description
C6 <T> mkrefany class 형식화된 형식 class 의 참조를 스택에 푸시합니다.

스택 전환 동작은 순차적으로 다음과 같습니다.

  1. 데이터 조각에 대한 포인터가 스택에 푸시됩니다.

  2. 포인터가 팝업되고 형식 class의 형식화된 참조로 변환됩니다.

  3. 형식화된 참조가 스택에 푸시됩니다.

mkrefany 명령은 동적으로 형식화된 참조의 전달을 지원합니다. 포인터는 , *또는 native int형식&이어야 하며 데이터 조각의 유효한 주소를 보유해야 합니다. Class 는 포인터에서 참조하는 데이터의 형식을 설명하는 클래스 토큰입니다. Mkrefany 는 스택에 형식화된 참조를 푸시하여 포인터 및 형식 class의 불투명 설명자를 제공합니다.

형식화된 참조에 허용되는 유일한 유효한 작업은 형식화된 참조가 매개 변수로 필요한 메서드에 전달하는 것입니다. 그런 다음 호출 수신자는 및 Refanyval 지침을 사용하여 Refanytype 각각 형식(클래스) 및 주소를 검색할 수 있습니다.

TypeLoadException 를 찾을 수 없는 경우 class throw됩니다. 일반적으로 MSIL(Microsoft Intermediate Language) 명령이 런타임이 아닌 네이티브 코드로 변환될 때 검색됩니다.

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

적용 대상