多个可选参数调用函数

时间:2013-07-18 16:13:26

标签: c# function optional-parameters optional-arguments optional-variables

假设我有如下所示的功能 它需要3个参数,2个具有可选值

private void  myfunc (int a, int b=2, int c=3)
{
  //do some stuff here related to a,b,c
}

现在我想调用这个函数,如下所示?

myfunc(3,,5)

所以我希望它使用默认参数b = 2

但是这样会给出错误。

此处出现错误消息

Argument missing

C#4.5

2 个答案:

答案 0 :(得分:43)

您需要使用named parameters,如下所示:

myfunc(a, c:5);

答案 1 :(得分:13)

这样称呼:

myfunc(3, c: 5)

您可以阅读named parameters on MSDN。命名参数可以是任何顺序,但必须遵循位置参数;即,一旦使用命名参数,就无法使用位置参数。