通常情況下,如果我有一個可選參數的可爲空類型,我會將null作爲默認值。這樣我就知道如果這個值爲null,調用者不想爲那個值指定任何值。什麼應該是DateTime可選參數的默認值?
public void Foo(string text, string text2= null);
如果參數通常是一個正整數,我可以用一個負數
public void Foo(string text, int index=-1);
如何日期時間?它不是可空的,並且(據我所知)它沒有一個無意義的數字,也不能是真正的輸入(例如-1爲正整數)。或者在那裏?你會在這種情況下使用什麼?
我也知道我可以使用可爲空的DateTime
類型,但這意味着方法調用者將不得不使用Nullable以及相反方便地傳遞DateTime。
[C#4.0可以重複使用TimeSpan作爲默認值的可選參數?](http://stackoverflow.com/questions/2168798/c-sharp-4-0-cani-i- use-a-timespan-as-an-optional-parameter-with-a-default-value) – nawfal