默认值c#功能但不是最后一个

时间:2018-04-02 13:53:06

标签: c#

说我有一个功能

void func (int a = 0, int b = 1)
{
     //do something
}

我想给b一个值,但不是

func( , 10);

我无法更改func函数,因为我还没有创建它,是否有关键字要说:使用此参数的默认值?

1 个答案:

答案 0 :(得分:2)

没有明确说明"使用此参数的默认值",但您可以避免指定您的任何参数想要默认值。如果要省略参数但指定后面的参数,则必须使用named arguments - 基本上只需指定参数要对应的参数的名称。在您的情况下,您希望为b参数提供参数,因此您可以这样调用它:

Func(b: 10);

如果您只想为a参数提供参数,则可以使用命名参数以明确:

Func(a: 10);

或只使用位置参数:

Func(10); // The compiler assumes this corresponds to the first parameter