自动行为和通常宣布的行为之间的性能差异.对或错?

Fre*_*man -1 .net c# clr visual-studio-2010 clr4.0

从性能的角度来看,自动实现的属性和手动实现的属性之间是否有任何区别?

Ada*_*rth 7

因为我们知道它们是在运行时创建的

自动属性不是在运行时创建的,它们是在编译时生成的.非常喜欢using,它们是有用的语法糖,可以减少你需要做的打字量.它们只是简单地转换成您手动编写的代码.

没有性能差异.除了支持字段名称之外,生成的代码与手动执行的代码相同.

作为@dasblinkenlight亮点,依托名,是一个"安全名称"(如,永远无法在C#创建)可能会导致在名称不能正确处理序列化问题.

  • +1您可能要提到,在使用auto属性序列化类的对象时,命名差异可能很重要. (2认同)