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진수 및 MSIL(Microsoft Intermediate Language) 어셈블리 형식을 나열합니다.

포맷 어셈블리 형식 Description
7d <T> stfld field 개체의 field 값을 새 값으로 바꿉니다.

순차적으로 스택 전환 동작은 다음과 같습니다.

  1. 개체 참조 또는 포인터가 스택에 푸시됩니다.

  2. 값이 스택에 푸시됩니다.

  3. 값과 개체 참조/포인터가 스택에서 팝됩니다. 개체의 field 값이 제공된 값으로 대체됩니다.

stfld 명령은 개체 필드의 값(형식) 또는 포인터(형식 Onative int또는 &*)를 통해 지정된 값으로 바꿉니다. Field 는 필드 멤버 참조를 참조하는 메타데이터 토큰입니다. 명령에는 stfld 둘 중 하나 또는 둘 다 Unaligned 의 접두사를 가질 수 있습니다 Volatile.

NullReferenceException 는 개체 참조 또는 포인터가 null 참조이고 필드가 정적이지 않은 경우 throw됩니다.

MissingFieldException 는 메타데이터에서 찾을 수 없는 경우 field throw됩니다. 일반적으로 MSIL(Microsoft Intermediate Language) 명령이 런타임이 아닌 네이티브 코드로 변환되는 경우 확인됩니다.

다음 Emit 메서드 오버로드는 opcode를 stfld 사용할 수 있습니다.

적용 대상