如何检查是否将可选参数传递给方法?
public void ExampleMethod(int required, string optionalstr = "default string",
int optionalint = 10)
{
if (optionalint was passed)
return;
}
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用Nullable<T>.HasValue(MSDN定义,MSDN示例):
int default_optionalint = 0;
public void ExampleMethod(int required, int? optionalint,
string optionalstr = "default string")
{
int _optionalint = optionalint ?? default_optionalint;
}
Run Code Online (Sandbox Code Playgroud)