有人可以解釋使用C#4.0編寫的以下方法簽名有什麼問題嗎?爲什麼我不能使用DateTime.MinValue和int.MinValue作爲C#4.0中的可選值?
public void Test(string arg1 = string.Empty, DateTime arg2 = DateTime.MinValue){}
我明白檢查編譯時間上的String.Empty之間「」與區別,但肯定的是可選參數已經實施的方式C#4.0是相當不夠的,如果你不能聲明一個合理的價值型null樣式比較?
如果arg2 = DateTime.MinValue,它會一直是這個常量值嗎?編譯器的眼中可能是多餘的? – brumScouse 2010-11-03 18:06:49
你得到的錯誤是什麼? – dotariel 2010-11-03 18:07:19
可能的重複[不能使用String.Empty作爲C#中可選參數的默認值 - 那有什麼意義?](http://stackoverflow.com/questions/2701314/cannot-use-string-empty-as- a-default-value-for-an-an-optional-in-c-sharp) – nawfal 2013-05-16 10:59:09