string
パラメータとして aおよび anを使用して、関数を呼び出したいと思いますInt32
。string
は単なるリテラルです。 は である必要Int32
がありfield
ます。だから私はそれが次のようなものであるべきだと思った:
.method public hidebysig instance string TestVoid() cil managed
{
.maxstack 1
.locals init (
[0] string CS$1$0000)
L_0000: nop
L_0001: ldstr "myString"
L_0006: ldfld int32 FirstNamespace.FirstClass::ByteField
L_000b: call string [Class1]Class1.TestClass::Functie<int32>(string, int32)
L_0010: ret
}
しかし、これは有効なコードではないというエラーをスローします。追加時
ldarg.0
ldfld
うまく動く前に。これはなぜですか? また、フィールドが増えると問題が発生するのでしょうか?