给出下面的例子,客观上比另一个更好/更快/更安全吗?对象字面实例化应该是一个最实际的实践吗?对象文字实例化比设置属性更快吗?
这不合适吗?
class Person
{
public string name;
public int age;
}
void MakePeople()
{
Person myPerson = new Person();
myPerson.name = "Steve";
myPerson.age = 21;
Person literalPerson = new Person { name = "John", age = 22 };
}
从这两种方法生成的IL应该是相同的。所以不行。 – 2012-08-15 19:32:23
一条线而不是三条,意图和效果更清晰。它可能慢10倍,它仍然是一个好主意。我无法理解人们对微小性能差异的注意(作为默认方法;我很乐意微观优化热点)。 – delnan 2012-08-15 19:33:38