2024-09-07 09:00:02

CTOR是什么意思?

在许多c#文件中,我看到名为CTOR或CTOR的区域标记(?)。ctor是什么意思?为什么这样的区域被称为ctor?


当前回答

它只是“构造函数”的简写——它也是IL中构造函数的名称。例如,打开Reflector并查看一个类型,您将看到各种构造函数的.ctor成员。

其他回答

再展开一点,有两种构造函数:实例初始化器(.ctor)和类型初始化器(.cctor)。构建下面的代码,并在ildasm.exe中查看IL代码。你会注意到静态字段'b'将通过.cctor()初始化,而实例字段将通过.ctor()初始化。

internal sealed class CtorExplorer
{
   protected int a = 0;
   protected static int b = 0;
}

通常这个区域应该包含类的构造函数

输入“ctor”并按TAB键两次,这将自动添加默认构造函数

它只是“构造函数”的简写——它也是IL中构造函数的名称。例如,打开Reflector并查看一个类型,您将看到各种构造函数的.ctor成员。