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
В следующей таблице приведен шестнадцатеричный формат инструкции и формат сборки MSIL, а также краткая справочная сводка:
Формат | Формат сборки | Описание |
---|---|---|
8D <T > |
newarr etype |
Создает новый массив с элементами типа etype . |
Переходный режим стека в последовательном порядке:
Количество элементов в массиве помещается в стек.
Число элементов, выброщенных из стека, и создается массив.
Ссылка на объект на новый массив помещается в стек.
Инструкция newarr
отправляет ссылку на объект (тип O
) в новый одномерный массив с нуля, элементы которого имеют тип etype
(маркер метаданных, описывающий тип). Число элементов в новом массиве должно быть указано как native int
. Допустимые индексы массива варьируются от нуля до максимального числа элементов минус один.
Элементы массива могут быть любого типа, включая типы значений.
Отсчитываемые от нуля одномерные массивы чисел создаются с помощью маркера метаданных, ссылающегося на соответствующий тип значения (Int32и т. д.). Элементы массива инициализируются значением 0 соответствующего типа.
Одномерные массивы и многомерные массивы создаются с помощью Newobj , а не newarr
. Чаще всего они создаются с помощью методов Array класса в платформа .NET Framework.
OutOfMemoryException возникает, если недостаточно памяти для удовлетворения запроса.
OverflowException возникает, если numElems
меньше 0.
Emit Следующая перегрузка newarr
метода может использовать код операции:
Применяется к
Продукт | Версии |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |