OpCodes.Newarr フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
要素が特定の型の 0 から始まる 1 次元配列へのオブジェクト参照を評価スタックにプッシュします。
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
フィールド値
注釈
次の表に、命令の 16 進数および Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンス概要を示します。
| フォーマット | アセンブリ形式 | Description |
|---|---|---|
8D <T> |
newarr etype |
etype型の要素を持つ新しい配列を作成します。 |
スタック遷移の動作は、順番に次のようになります。
配列内の要素の数がスタックにプッシュされます。
スタックから要素の数がポップされ、配列が作成されます。
新しい配列へのオブジェクト参照がスタックにプッシュされます。
newarr命令は、オブジェクト参照 (型O) を、要素が etype 型 (型を記述するメタデータ トークン) である新しい 0 から始まる 1 次元配列にプッシュします。 新しい配列内の要素の数は、 native intとして指定する必要があります。 有効な配列インデックスの範囲は、0 から要素の最大数から 1 を引いた値までです。
配列の要素には、値型を含む任意の型を指定できます。
数値の 0 から始まる 1 次元配列は、適切な値型 (Int32 など) を参照するメタデータ トークンを使用して作成されます。 配列の要素は、適切な型の 0 に初期化されます。
0 以外の 1 次元配列と多次元配列は、Newobjではなくnewarrを使用して作成されます。 より一般的には、.NET Framework の Array クラスのメソッドを使用して作成されます。
OutOfMemoryException は、要求を満たすのに十分なメモリがない場合にスローされます。
OverflowException は、 numElems が 0 未満の場合にスローされます。
次の Emit メソッドオーバーロードでは、 newarr オペコードを使用できます。