C# - 具有与不带括号的对象初始化程序

时间:2016-07-07 13:59:36

标签: c# initializer

因此,您可以使用初始化程序在C#中创建新实例,如下所示:

Dog dog = new Dog()
{
    Name = "Rex"
};

但是,您也可以这样做(没有括号):

Dog dog = new Dog
{
    Name = "Rex"
};

有区别吗?我想也许第二个没有调用构造函数,但我测试了,确实如此。我意识到你可以在第一个版本中传递参数,但还有其他差异吗?第二个是“坏风格”吗?

0 个答案:

没有答案