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 

Значение поля

Комментарии

В следующей таблице перечислены шестнадцатеричные и шестнадцатеричные и Microsoft формат сборки промежуточного языка (MSIL) инструкции, а также краткая сводка по ссылке:

Формат Формат сборки Description
C6 <T> mkrefany class Отправляет типизированные ссылки типа class в стек.

Переходное поведение стека в последовательном порядке:

  1. Указатель на фрагмент данных передается в стек.

  2. Указатель повернут и преобразуется в типизированный ссылочный объект типа class.

  3. Типизированный справочник передается в стек.

Инструкция mkrefany поддерживает передачу динамически типизированных ссылок. Указатель должен иметь тип &, *или native int, а также содержать допустимый адрес части данных. Class — это маркер класса, описывающий тип данных, на которые ссылается указатель. Mkrefany отправляет типизированные ссылки на стек, предоставляя непрозрачный дескриптор указателя и типа class.

Единственная допустимая операция, разрешенная при типизированной ссылке, заключается в передаче ее методу, требующего типизированной ссылки в качестве параметра. Вызывающий объект может использовать Refanytype и Refanyval инструкции для получения типа (класса) и адреса соответственно.

TypeLoadException вызывается, если class не удается найти. Обычно это обнаруживается, когда инструкции по Microsoft промежуточного языка (MSIL) преобразуются в машинный код, а не во время выполнения.

Следующая Emit перегрузка метода может использовать mkrefany код opcode:

Применяется к