我在类库中有以下方法:
public virtual void PrintError(Exception e, string verboseMessage)
{
}
我想做的是让verboseMessage可选(如果你愿意的话,可以用PrintError(e);
来调用它。我试着研究这个但是我不知道这个术语是什么为此 - 这是如何完成的,我应该注意什么?
答案 0 :(得分:3)
这恰好称为Optional arguments
你可以写:
public virtual void PrintError(Exception e, string verboseMessage = null)
{
//... etc
}
其中可选参数string verboseMessage
的默认值为null
,然后您可以调用这样的方法:
MyClass.PrintError(someException);
相当于:
MyClass.PrintError(someException, null);
答案 1 :(得分:2)
可以在方法声明中设置可选参数,如下所示:
public virtual void PrintError(Exception e, string verboseMessage = "defaul value")
{
}
因此,每当省略第二个参数时,它将作为default value
发送(在我的示例中)。