OpCodes.Ldflda フィールド
アセンブリ: mscorlib (mscorlib.dll 内)


命令の 16 進数の形式、MSIL (Microsoft Intermediate Language) アセンブリ形式、および簡単な説明の一覧を次の表に示します。
ldflda 命令は、オブジェクト内で見つかったフィールドのアドレスをスタックにプッシュします。オブジェクトは、オブジェクト参照 (O 型)、マネージ ポインタ (& 型)、アンマネージ ポインタ (natural int 型)、遷移ポインタ (* 型)、または値型のインスタンスとしてスタック上に存在している必要があります。確認可能なコードでは、アンマネージ ポインタは使用できません。オブジェクトのフィールドは、フィールド メンバを必ず参照しているメタデータ トークンによって指定されます。
ldflda によって返される値は、マネージ ポインタ (& 型) です。ただし、オブジェクトがアンマネージ ポインタとしてスタックにプッシュされる場合を除きます。この場合は、返されるアドレスもアンマーネージ ポインタ (natural int 型) になります。
ldflda 命令は、直前に Unaligned プリフィックスと Volatile プリフィックスのどちらかまたは両方を付けることができます。
オブジェクトが、そのオブジェクトのアクセス元であるアプリケーション ドメイン内にない場合は、InvalidOperationException がスローされます。アクセス元のアプリケーション ドメイン内にないフィールドのアドレスは、読み込むことができません。
オブジェクトが null であり、フィールドが静的ではない場合は、NullReferenceException がスローされます。
指定したフィールドがメタデータ内で見つからない場合は、MissingFieldException がスローされます。これは、通常、実行時ではなく、MSIL (Microsoft Intermediate Language) 命令がネイティブ コードに変換されるときにチェックされます。
ldflda オペコードを使用できる Emit メソッド オーバーロードを次に示します。
-
ILGenerator.Emit(OpCode, FieldInfo)

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からOpCodes.Ldflda フィールドを検索する場合は、下記のリンクをクリックしてください。

- OpCodes.Ldflda フィールドのページへのリンク