我是 C# 的新手,我不確定是否可以重構這個類以使這些建構式鏈接。
我已經嘗試過 Internet 上的示例,但所有示例都解釋了如何將建構式與多個引數按升序排列。我這里有建構式,每個都有兩個引數,因為建構式被多載。希望我的解釋是有道理的。
我真的很掙扎,任何幫助都將不勝感激。
public class MyException: TheException
{
public MyException()
: base()
{
}
public MyException(string message)
: base(message)
{
}
public MyException(string message, Exception inner)
: base(message, inner)
{
}
public MyException(string message, string outcome, Exception inner)
: base(message, outcome, inner)
{
}
public MyException(string message, string outcome)
: base(message, outcome)
{
}
}
uj5u.com熱心網友回復:
您可以使用this而不是base鏈接您的建構式。您需要提供默認值。這是一個例子。
public class MyException: TheException
{
public MyException()
: this("default message")
{
}
// assuming here you want to call other overload with Exception, not with outcome
public MyException(string message)
: this(message, (Exception)null)
{
}
public MyException(string message, Exception inner)
: this(message, null, inner)
{
}
public MyException(string message, string outcome)
: this(message, outcome, null)
{
}
public MyException(string message, string outcome, Exception inner)
: base(message, outcome, inner)
{
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/425689.html
標籤:C#
