class Program { staticvoid Main(string[] args) { Vector v =new Vector { X =1, Y =2 }; } } class Vector { publicdouble X { get; set; } publicdouble Y { get; set; } }
在上面的例子中,我们通过一句代码(Vector v = new Vector { X = 1, Y = 2 }; )实现对Vector对象的创建和对X&Y的初始化。
在本系列开始的时候,我就一直在强调: C# 3.x这些Feature仅仅是基于一种Programming Language层面的新特性而已,这些特性通过Programming Language对应的Compiler在编译过程添加一些辅助的Code来实现。对于上面这句简单的Code(Vector v = new Vector { X = 1, Y = 2 }; ),通过编译,将会下面这个样子: