OpCodes.Ldarga Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Загружает адрес аргумента в стек вычислений.
public: static initonly System::Reflection::Emit::OpCode Ldarga;
public static readonly System.Reflection.Emit.OpCode Ldarga;
staticval mutable Ldarga : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldarga As OpCode
Значение поля
Комментарии
В следующей таблице приведен шестнадцатеричный формат инструкции и формат сборки MSIL, а также краткая справочная сводка:
| Формат | Формат сборки | Описание |
|---|---|---|
FE 0A <unsigned int16> |
ldarga index |
Получение адреса аргумента, индексированного с помощью index. |
Переходный режим стека в последовательном порядке:
- Адрес
addrаргумента, индексированного по ,indexпомещается в стек.
Инструкция ldarga получает адрес (типа &) аргумента, индексированного с помощью index, где аргументы индексируются от 0 до . Адрес addr всегда выравнивается по естественной границе на целевом компьютере. Аргумент хранится в неуправляемой памяти, поэтому возвращаемое значение можно преобразовать в неуправляемый указатель без закрепления.
Для процедур, которые принимают список аргументов переменной длины, инструкцию ldarga можно использовать только для начальных фиксированных аргументов, а не в переменной части сигнатуры.
ldarga используется для передачи параметров by-ref. В других случаях Ldarg следует использовать и Starg .
Emit Следующая перегрузка ldarga метода может использовать код операции: