私は、IL レベルでターゲット アセンブリを操作する必要がある、Mono.Cecil を使用して小さな IL ウィービング アプリケーションを作成しています。
私の質問は非常に単純ですが、それでもこの問題は非常に紛らわしいと思います。との指示の実際的な違いは何ですか?ldfld
ldflda
msdn に相談したところldfld
、フィールドの値をフェッチしている間に、フィールドldflda
のアドレスを取得しているようです。わかりました...しかし、これはどういう意味ですか?前者は値型 (および文字列) に使用され、後者は参照型に使用されると最初は思っていましたが、C# スニペットをコンパイルして Reflector で確認したところ、間違っていることがわかりました。
C# コンパイラがldflda
の代わりに出力するときに明確なパターンを見つけることができませんでしldfld
た。検索しても、これを説明する記事は見つかりませんでした。ldflda
では、代わりにいつ使用するのldfld
ですか?
どんな助けでも大歓迎です。