CIL フォーマット
A3 (T)
/ ldelem (typeTok)
90
/ ldelem.i1
92
/ ldelem.i2
94
/ ldelem.i4
96
/ ldelem.i8
91
/ ldelem.u1
93
/ ldelem.u2
95
/ ldelem.u4
96
/ ldelem.u8
98
/ ldelem.r4
99
/ ldelem.r8
97
/ ldelem.i
9A
/ ldelem.ref
スタック
..., array, index → ..., value
詳細
0 ベース 1 次元の配列 array から、 index 番目の要素の値をロードしてスタックの先頭に積みます。 index は native int もしくは int32 です。 ldelem (typeTok) では value の型は typeTok で示される型になります。 ldelem.<type> では value の型は命令で示される型になります。
0 ベースでない 1 次元配列や 0 ベースの多次元配列には、 配列クラスの Get メソッドを使用します。
4 バイトより小さい整数値は int32 に拡張されてスタックにロードされます。 浮動小数点数はネイティブ・サイズ(F)に拡張されます。
Exception
index が負もしくは array の境界よりも大きい場合、 IndexOutOfRangeException が発生します。
array が null の場合、 NullReferenceException が発生します。