类修饰符在cil调用命令中做了什么?

时间:2015-03-25 17:06:26

标签: cil

查看monodis生成的代码,我看到对Console.WriteLine的调用已转换为call void class [mscorlib]System.Console::WriteLine。我知道开头的void是返回值,但是这个类是什么意思?

1 个答案:

答案 0 :(得分:2)

class关键字只表示System.Console是一个类。

the CLI specification的相关部分是§II.7.1类型。它描述了CIL语法的 Type 规则,该规则要求class引用任何“用户定义的引用类型”。

虽然call指令实际上采用了 TypeSpec ,但这意味着也允许省略class关键字。