我的代碼中有這樣的內容。現在該方法假設返回一個枚舉類型。 但是並不是所有的代碼路徑都返回一個值。我想解決這個問題,同時我希望調試器提醒我(即)聲明如果進入else(代碼中的第三個條件),則不會返回枚舉類型。通常我會爲else條件添加另一個枚舉類型並檢查返回的值,但我想知道是否有更好的方法來完成此操作。如何爲返回類型的特定條件添加斷言
private enumType AdjustType(someo_object q)
{
if(q.val.Equals("M"))
{
return enumType.FirstType;
}
else if (q.val.Equals("N"))
{
return enumType.SecondType;
}
else
{
return null; //This isnt allowed - I would like something like an assertion here
}
}
或者使用F#選項類型:http://langexplr.blogspot.com/2008/06/using-f-option-types-in-c.html – rkrahl 2013-02-25 20:20:22