我想知道是否可以将多个变量分配给一个对象而不必将其分配给变量然后分配它们。例如,可以转换它:
GameObject obj = Pooler.Instantiate().GetComponent<Asteroid>();
obj.speed = speed;
obj.direction = -1;
看起来像这样:
Pooler.Instantiate().GetComponent<Asteroid>().({speed = speed, direction = -1});
当我这样做时,我得到一个错误,所以我想知道是否有可能做那样的事情?
答案 0 :(得分:4)
“一次分配多个变量”将在C#中称为对象初始化程序。这是一个典型的例子:
旧方式:
Person person = new Person();
person.FirstName = "Scott";
person.LastName = "Guthrie";
person.Age = 32;
新方式:
var person = new Person { FirstName="Scott", LastName="Guthrie", Age=32 };
这两种语法都包含关键字“new
”。