一、可缺省参数:当参数的默认值作为声明的一部分被指定的时候,参数就是可缺省的。
比如:声明一个方法public void Max(int x,int y=5,int z=7); 调用方法时可以显示的传递3个参数,Max(1,2,3); 也可以省略掉传递第二个参数或第二、三个参数,这样的情况下,默认值就会被传递进去,Max(1,2); Max(1); 不允许这样写:Max(1,,3);
二、具名参数:C# 4.0现在还支持“具名实参”的概念。这允许你把传给一个方法的参数显式地命名,而不是通过实参的位置来识别它。
比如:声明一个方法public void DoSomething(int x=0,int y=0); 当一个方法支持多个可缺省参数,而你想要指定在传递哪个实参时,具名实参会非常有用。 想忽略第二个参数,那第一个参数就用具名参数的方法:Max(x:1); 也可全部都用具名参数的方法:Max(x:1,y:2); 穿入具名参数是不需要考虑顺序的:Max(y:2,x:1);