现在的位置: 首页 > 综合 > 正文

c# 可选参数、命名参数

2012年12月12日 ⁄ 综合 ⁄ 共 326字 ⁄ 字号 评论关闭

重新指定分配默认值的参数时,可以显式地为指定参数名称赋值,隐式指定的时候,是根据方法参数的顺序,靠c#编译器的推断。

代码示例:

复制代码 代码如下:
void M(int x=9,string s="a",DateTime dt = default(DateTime))
{...}

Main()
{
M();//使用默认值
M(8,"b")://隐式指定方法参数,没有指定的使用默认值
M(6,"v",DateTime.Now);//同上
M(6,dt:DateTime.Now);//显式的指定参数名称,为指定的参数传值
}

使用的指导原则:
1、可以为方法和有参属性指定默认值
2、有默认值的参数,必须定义在没有默认值的参数之后
3、默认参数必须是常量
4、ref 和 out参数不能指定默认值

抱歉!评论已关闭.