この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

OpCodes.Ldind_I4 フィールド

 

公開日: 2016年11月

型の値を読み込む int32 として、 int32 スタック、評価に間接的にします。

名前空間:   System.Reflection.Emit
アセンブリ:  mscorlib (mscorlib.dll 内)

public static readonly OpCode Ldind_I4

フィールドの値

Type: System.Reflection.Emit.OpCode

次の表に、命令の 16 進数および簡単なリファレンスの概要と共に、Microsoft 中間言語 (MSIL) アセンブリの形式を示します。

形式

アセンブリの形式

説明

4A

ldind.i4

読み込み、 int32 アドレスに addr としてスタックに、 int32です。

履歴の移行動作を順番には。

  1. アドレスは、スタックにプッシュされます。

  2. アドレスがスタックからポップされます。アドレスにある値がフェッチされます。

  3. 取得した値は、スタックにプッシュされます。

ldind.i4 いない命令を直接読み込みます、 int32 、指定したアドレスからの値 (型の native int, 、&, 、または *) としてスタックに、 int32です。

すべての ldind 手順については、ショートカット、 Ldobj 命令が対応する組み込みの値クラスを指定します。

4 バイト未満の整数値に拡張されたことに注意してください int32 (いない native int) を評価スタックに読み込まれるとき。 浮動小数点値に変換する F を評価スタックに読み込まれるときに入力します。

形式が正しい Microsoft 中間言語 (MSIL) により、 ldind 命令は、ポインターの型と矛盾しない方法で使用します。

スタックに最初にプッシュされるアドレスは、コンピューター上のオブジェクトの元のサイズに合わせる必要がある、または NullReferenceException 発生することができます (を参照してください、 Unaligned 予防策の命令をプレフィックス)。 アドレスを返すすべての MSIL 命令の結果 (たとえば、 LdlocaLdarga) が、安全に配置されています。 1 バイトを超えるデータ型、バイトの順序付けは、[ターゲット CPU に依存します。 バイトの順序付けに依存するコードは、すべてのプラットフォームでは実行されません。

NullReferenceException 無効なアドレスが検出された場合にスローされます。

Emit メソッドのオーバー ロードを使用して、 ldind.i4 オペコード。

  • ILGenerator.Emit(OpCode)

ユニバーサル Windows プラットフォーム
8 以降で使用可能
.NET Framework
1.1 以降で使用可能
ポータブル クラス ライブラリ
サポート対象: 移植可能 .NET プラットフォーム
Silverlight
2.0 以降で使用可能
Windows Phone Silverlight
7.1 以降で使用可能
Windows Phone
8.1 以降で使用可能
トップに戻る
表示: