OpCodes.Stfld Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Заменяет значение в поле объекта, по ссылке на объект или указателю, на новое значение.
public: static initonly System::Reflection::Emit::OpCode Stfld;
public static readonly System.Reflection.Emit.OpCode Stfld;
staticval mutable Stfld : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stfld As OpCode
Значение поля
Комментарии
В следующей таблице приведен шестнадцатеричный формат инструкции и формат сборки msil, а также краткий обзор:
Формат | Формат сборки | Описание |
---|---|---|
7D <T > |
stfld field |
Заменяет значение field объекта новым значением. |
Переходный режим стека в последовательном порядке:
Ссылка на объект или указатель помещается в стек.
Значение помещается в стек.
Значение и ссылка на объект или указатель извлекаются из стека; значение
field
в объекте заменяется предоставленным значением.
Инструкция stfld
заменяет значение поля объекта (тип O
) или указатель (тип native int
, &
или *
) заданным значением.
Field
— это маркер метаданных, ссылающийся на ссылку на элемент поля. Инструкция stfld
может иметь префикс или оба значения Unaligned и Volatile.
NullReferenceException Возникает, если ссылка на объект или указатель являются пустой ссылкой, а поле не является статическим.
MissingFieldException возникает, если field
не найден в метаданных. Обычно это проверяется при преобразовании инструкции MSIL в машинный код, а не во время выполнения.
Следующая Emit перегрузка stfld
метода может использовать код операции: