通常情况下,如果我有一个可空类型的可选参数,我会把 null 作为默认值。这样我就知道,如果该值为 null,则调用方不想为该值指定任何值。
public void Foo(string text, string text2= null);
如果参数通常是正整数,我可以使用负数
public void Foo(string text, int index=-1);
DateTime怎么样?它不可为空,而且(据我所知)它也没有不能成为真正输入的无意义数字(比如说正整数为-1)。或者有吗?在这种情况下你会使用什么?
我也知道我可以使用可空的DateTime
类型,但这意味着方法调用者将不得不使用Nullable而不是方便地传递一个DateTime。