标签: c# initializer
因此,您可以使用初始化程序在C#中创建新实例,如下所示:
Dog dog = new Dog() { Name = "Rex" };
但是,您也可以这样做(没有括号):
Dog dog = new Dog { Name = "Rex" };
有区别吗?我想也许第二个没有调用构造函数,但我测试了,确实如此。我意识到你可以在第一个版本中传递参数,但还有其他差异吗?第二个是“坏风格”吗?