情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

OpCodes.Ldelem_Ref フィールド

2013/12/12

指定された配列インデックスにあるオブジェクト参照を格納している要素を、O (オブジェクト参照) 型として評価スタックの一番上に読み込みます。

Namespace:  System.Reflection.Emit
アセンブリ:  mscorlib (mscorlib.dll 内)

public static readonly OpCode Ldelem_Ref

命令の 16 進数の形式、MSIL (Microsoft Intermediate Language) アセンブリ形式、および簡単な説明の一覧を次の表に示します。

形式

アセンブリ形式

説明

9A

ldelem.ref

index にあるオブジェクト参照を持つ要素を、O 型として評価スタックの一番上に読み込みます。

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

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

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

  3. indexarray がスタックからポップされます。array 内の index の位置に格納された値が検索されます。

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

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

ldelem.ref の戻り値は O (オブジェクト参照) 型です。

array が null 参照である場合は、NullReferenceException がスローされます。

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

index が負の値である場合、または array の上限を超える場合は、IndexOutOfRangeException がスローされます。

ldelem.ref オペコードを使用できる Emit メソッド オーバーロードを次に示します。

  • ILGenerator.Emit(OpCode)

Windows Phone OS

サポート: 8.0, 7.1

表示: