OpCodes.Ldind_Ref フィールドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > OpCodes.Ldind_Ref フィールドの意味・解説 

OpCodes.Ldind_Ref フィールド

オブジェクト参照を O 型 (オブジェクト参照) として評価スタックに間接的に読み込みます。

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

Public Shared ReadOnly Ldind_Ref
 As OpCode
Dim value As OpCode

value = OpCodes.Ldind_Ref
public:
static initonly OpCode Ldind_Ref
解説解説

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

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

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

  2. アドレスがスタックからポップされ、アドレスにあるオブジェクト参照がフェッチされます。

  3. フェッチされた参照がスタックにプッシュされます。

ldind.ref 命令は、指定したアドレスのオブジェクト参照 (natural int、&、または * の各型) を O 型としてスタックに間接的に読み込みます。

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

4 バイト未満の整数値は、評価スタックに読み込まれるときに、natural int ではなく、int32 に拡張されます。浮動小数点値は、評価スタックに読み込まれるときに、F 型に変換されます。

正しい形式の MSIL (Microsoft Intermediate Language) を使用すると、ldind 命令はポインタの型と矛盾しない方法で使用されます。

最初にスタックにプッシュされるアドレスをコンピュータのオブジェクトの通常サイズに合わせて配置する必要があります。このようにしないと NullReferenceException が発生することがあります。これを予防する方法については、Unaligned プリフィックス命令のトピックを参照してください。アドレス (Ldloca、Ldarga など) を返す MSIL 命令の結果が安全に配置されます。1 バイトよりサイズが大きいデータ型の場合、バイト順はターゲット CPU に依存します。バイト順に依存するコードは、一部のプラットフォームでは実行されないことがあります。

無効なアドレスが検出されると、NullReferenceException がスローされることがあります。

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

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
OpCodes クラス
OpCodes メンバ
System.Reflection.Emit 名前空間



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

OpCodes.Ldind_Ref フィールドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



OpCodes.Ldind_Ref フィールドのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS