在 C# 中,如果构造函数基本上是不返回任何内容的方法,为什么它们的返回类型不为 void?因为 void 是一个返回类型,它表示没有返回任何内容。
问问题
169 次
3 回答
4
如果返回类型(用语言/语法术语)总是“void”,那么说“void”有什么意义?这将是多余的,只能作为出错的东西。如果“void”是唯一有效的选项,为什么我们需要告诉编译器?为什么不完全省略它呢?
于 2013-05-18T11:38:51.343 回答
2
它是一种将构造函数与普通方法调用区分开来的语言构造。
但是,在 IL 级别(正如您所指出的),构造函数只不过是一个 void 方法。
于 2013-05-18T11:48:11.907 回答
0
也许是为了防止类用户随意调用它:
SomeClass myClass = new SomeClass();
myClass.SomeClass();
...
myClass.SomeClass();
于 2013-05-18T11:24:37.650 回答