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