我现在正在尝试专门了解 IL 代码和 C# 内部结构,我编写了一个简单的 c# hello world 程序,其代码是:
using System;
class Program
{
public static void Main()
{
Console.WriteLine("Hello World");
}
}
这是为类的构造函数生成的 IL Program
:
.method public hidebysig specialname rtspecialname
instance void .ctor() cil managed
{
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ret
} // end of method Program::.ctor
我无法理解 specialname 和 rtspecialname 的含义和用途或它们的用途是什么?