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