【发布时间】:2011-01-06 10:50:09
【问题描述】:
在很多 C# 文件中,我看到名为 CTOR 或 ctor 的区域标签(?)。 ctor是什么意思?为什么这样的区域叫ctor?
【问题讨论】:
标签: c#
在很多 C# 文件中,我看到名为 CTOR 或 ctor 的区域标签(?)。 ctor是什么意思?为什么这样的区域叫ctor?
【问题讨论】:
标签: c#
它只是“构造函数”的简写——它也是 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键两次,这将自动添加默认构造函数
【讨论】: