次の方法で共有


OpCodes.Stfld フィールド

定義

オブジェクト参照またはポインターのフィールドに格納された値を新しい値に置き換えます。

public: static initonly System::Reflection::Emit::OpCode Stfld;
public static readonly System.Reflection.Emit.OpCode Stfld;
 staticval mutable Stfld : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stfld As OpCode 

フィールド値

注釈

次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。

形式 アセンブリ形式 説明
7D <T> stfld field オブジェクトの値を新しい値 field に置き換えます。

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

  1. オブジェクト参照またはポインターがスタックにプッシュされます。

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

  3. 値とオブジェクト参照/ポインターがスタックからポップされます。オブジェクトの の field 値は、指定された値に置き換えられます。

命令はstfld、オブジェクトのフィールドの値 (型) またはポインター (型Onative int&、または *) を介して、指定された値に置き換えます。 Field は、フィールド メンバー参照を参照するメタデータ トークンです。 命令にはstfld、 と Volatileの両方または 両方のUnalignedプレフィックスを指定できます。

NullReferenceException オブジェクト参照またはポインターが null 参照であり、フィールドが静的でない場合にスローされます。

MissingFieldException がメタデータで見つからない場合 field は がスローされます。 これは通常、Microsoft Intermediate Language (MSIL) 命令が実行時ではなくネイティブ コードに変換されるときにチェックされます。

Emit のメソッド オーバーロードでは、オペコードを stfld 使用できます。

適用対象