次の方法で共有


OpCodes.Stsfld フィールド

静的フィールドの値を評価スタックの値に置き換えます。

Public Shared ReadOnly Stsfld As OpCode
[C#]
public static readonly OpCode Stsfld;
[C++]
public: static OpCode Stsfld;
[JScript]
public static var Stsfld : OpCode;

解説

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

形式 アセンブリ形式 説明
80 < T > stsfld field field の値を提供された値に置き換えます。

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

  1. 値がスタックにプッシュされます。
  2. 値がスタックからポップされ、 field に格納されます。

stsfld 命令は、静的フィールドの値をスタックの値に置き換えます。 field は、メタデータ トークンであり、静的フィールド メンバを参照している必要があります。

stsfld 命令には、 Volatile をプリフィックスとして付けることができます。

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

stsfld オペコードを使用できる Emit コンストラクタ オーバーロードを次に示します。

  • ILGenerator.Emit(OpCode, FieldInfo)

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

OpCodes クラス | OpCodes メンバ | System.Reflection.Emit 名前空間