kav*_*vun 7 .net c# class object instantiation
使用对一个对象进行实例化有什么区别
classInstance = new Class() { prop1 = "", prop2 = "" };
和
classInstance = new Class { prop1 = "", prop2 = "" };
简短回答:没什么.()
如果你想传递一些构造函数args ,可以使用它,但在你的情况下,因为你没有,你可以跳过()
.
例如.()
在这里很有用.
Foo foo = new Foo(someBar){Prop1 = "value1", Prop2 = value2};
Run Code Online (Sandbox Code Playgroud)
但如果你试图调用无参数构造函数,它是可选的
Foo foo = new Foo {Prop1 = "value1", Prop2 = value2};
Run Code Online (Sandbox Code Playgroud)
没有什么。第二个只是第一个的捷径。第一个允许您将参数包含到构造函数中。因此,如果类没有空构造函数,则不能使用快捷方式。
\n\n您可能对这个问题感兴趣:
\n\n为什么 C# 3.0 对象初始值设定项构造函数括号是可选的?
\n\nEric Lippert\xc2\xb4s 很棒的博客文章:
\n\n\n 归档时间: |
|
查看次数: |
463 次 |
最近记录: |