我努力让我的头周围发生了什么,在下面的例子中的列表发生的事情:列表的创建和对象初始
创作dataOjb
public class DataObject
{
public List<object> SomeObjects { get; set; }
}
class Program
{
static void Main(string[] args)
{
var dataObj = new DataObject()
{
SomeObjects = { new object() },
};
Console.ReadKey();
}
}
因为SomeObjects
属性尚未实例化明显失败。我假设没有编译错误,因为DataObject
可能有一个构造函数实例化SomeObjects
。鉴于此,如果我试图做这样的事情:
List<int> SomeObjects;
SomeObjects = {1, 2, 3, 4};
这显然是行不通的,而且也不:
List<int> SomeObjects = new List<int>();
SomeObjects = {1, 2, 3, 4};
所以去我的实际问题,什么调用的是第一个对象初始值设定项(我试过查找它并找不到它),为什么它的行为不同,还有其他地方可以使用它吗?
向下选民,原因是什么?这似乎并不具有建设性,我怎么知道我的问题出了什么问题? –