c# 可选参数、命名参数

 更新时间:2020年6月25日 11:43  点击:1833
重新指定分配默认值的参数时,可以显式地为指定参数名称赋值,隐式指定的时候,是根据方法参数的顺序,靠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参数不能指定默认值
[!--infotagslink--]

相关文章