OpCodes.Newarr Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Отправляет ссылку на объект на новый одномерный массив, элементы которого имеют определенный тип в стек оценки.
public: static initonly System::Reflection::Emit::OpCode Newarr;
public static readonly System.Reflection.Emit.OpCode Newarr;
staticval mutable Newarr : System.Reflection.Emit.OpCode
Public Shared ReadOnly Newarr As OpCode
Значение поля
Комментарии
В следующей таблице перечислены шестнадцатеричные и шестнадцатеричные и Microsoft формат сборки промежуточного языка (MSIL) инструкции, а также краткая сводка по ссылке:
| Формат | Формат сборки | Description |
|---|---|---|
8D <T> |
newarr etype |
Создает новый массив с элементами типа etype. |
Переходное поведение стека в последовательном порядке:
Количество элементов в массиве отправляется в стек.
Число элементов подается из стека и создается массив.
Ссылка на объект нового массива передается в стек.
Инструкция newarr отправляет ссылку на объект (тип O) в новый одномерный массив, элементы которого имеют тип etype (маркер метаданных, описывающий тип). Число элементов в новом массиве должно быть указано как .native int Допустимые индексы массива варьируются от нуля до максимального числа элементов минус один.
Элементы массива могут быть любым типом, включая типы значений.
Отсчитываемые от нуля одномерные массивы чисел создаются с помощью маркера метаданных, ссылающегося на соответствующий тип значения (Int32и т. д.). Элементы массива инициализированы в 0 соответствующего типа.
Ненулевое одномерное массивы и многомерные массивы создаются с помощью Newobj , а не newarr. Чаще всего они создаются с помощью методов класса Array в .NET Framework.
OutOfMemoryException вызывается, если недостаточно памяти для удовлетворения запроса.
OverflowException вызывается, если numElems меньше 0.
Следующая Emit перегрузка метода может использовать newarr код opcode: