次の方法で共有


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 

フィールド値

注釈

次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。

形式 アセンブリ形式 説明
92 ldelem.i2 int16 が の index 要素を スタックの上部に として int32読み込みます。

スタック遷移の動作は、順番に次のようになります。

  1. オブジェクト参照 array がスタックにプッシュされます。

  2. インデックス値 index がスタックにプッシュされます。

  3. indexarray はスタックからポップされます。の位置indexarrayに格納されている値が検索されます。

  4. 値はスタックにプッシュされます。

命令は ldelem.i2 、インデックス index (型 native int) を持つ要素の値を 0 から始まる 1 次元配列 array に読み込み、スタックの上部に配置します。 配列はオブジェクトであるため、 型 Oの値で表されます。

の戻り値 ldelem.i2 は です int16

4 バイト未満の整数値は、評価スタックに int32 読み込まれると ( ではなく native int) に拡張されることに注意してください。

NullReferenceException が null 参照の場合 array は がスローされます。

ArrayTypeMismatchException が必要な型の要素を保持していない場合 array は がスローされます。

IndexOutOfRangeExceptionが負の場合、または のarray境界より大きい場合indexは がスローされます。

Emit のメソッド オーバーロードでは、オペコードを ldelem.i2 使用できます。

適用対象