C#函数中是否可以使用可选参数
本文关键字:参数 可以使 函数 是否 | 更新日期: 2023-09-27 17:59:07
我需要一个有两个参数的函数。
public void funx(string a, string b)
{
// operations using string a and b
}
是否可以只使用第一个参数"a"来调用方法funx()。如果在函数调用过程中没有输入第二个参数"b",它应该采用一个可以在fun x中设置的默认值(对于b)。如果我用两个参数a&b,则应在跳过默认值集(对于"b")时使用我在函数调用中提供的值。
简单地说,"b"是可选的。如果输入,则应使用其值。如果未输入,则应使用默认值
当然,像这样:
public void funx(string a, string b = "default value")
{
// operations using string a and b
}
如果给b
一个默认值,那么它就是可选的,这样就可以通过提供一个参数来调用方法。如果您没有提供b
的值,则将使用默认值,如果您提供了值,则默认值将被忽略。
此外,可选参数的默认值必须是编译时间常数,可选参数在参数列表的末尾定义。您可以参考文档了解更多详细信息。
是的,有可能
public void funx(string a, string b = "")
{
}
但我更喜欢过载的功能,比如:
public void funx(string a)
{
this.funcx(a, "default");
}
public void funx(string a, string b)
{
// operations using string a and b
}