OpCodes.Ldelem_U4 Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Загружает элемент типа unsigned int32 с заданным индексом массива на вершину стека вычислений как int32.
public: static initonly System::Reflection::Emit::OpCode Ldelem_U4;
public static readonly System.Reflection.Emit.OpCode Ldelem_U4;
staticval mutable Ldelem_U4 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldelem_U4 As OpCode
Значение поля
Комментарии
В следующей таблице приведен шестнадцатеричный формат инструкции и формат сборки msil, а также краткий обзор:
| Формат | Формат сборки | Описание |
|---|---|---|
| 95 | ldelem.u4 | Загружает элемент с типом unsigned int32 по индексу в верхней части стека в виде int32. |
Переходный режим стека в последовательном порядке:
Ссылка на
arrayобъект передается в стек.Значение
indexиндекса передается в стек.indexиarrayизвлекаются из стека; выполняется поиск значения, хранящегося в позицииindexвarray.Значение помещается в стек.
Инструкция ldelem.u4 загружает значение элемента с индексом index (тип native int) в отсчитываемый от нуля одномерный массив array и помещает его в верхнюю часть стека. Массивы являются объектами и, следовательно, представлены значением типа O.
Возвращаемое значение для ldelem.u4 равно int32.
Обратите внимание, что целочисленные значения размером менее 4 байт расширяются до int32 (не native int) при загрузке в стек вычислений.
NullReferenceException возникает, если array является пустой ссылкой.
ArrayTypeMismatchException возникает, если массив не содержит элементы требуемого типа.
IndexOutOfRangeException возникает, если index имеет отрицательное значение или больше границы array.
Следующая Emit перегрузка ldelem.u4 метода может использовать код операции: