具有默认值的C#参数如何为空?

时间:2013-03-30 01:22:08

标签: c# .net c#-4.0 asp.net-mvc-4 .net-4.0

下面显示的代码显示了一个方法Get,它使用默认值search获取字符串""

Image showing null value for a parameter that has a default value

search具有非空的默认值并且永远不会更改时,该值如何可能为空?

1 个答案:

答案 0 :(得分:13)

  

当搜索具有非空的默认值并且永远不会更改时,该值如何可能为空?

如果明确地将null传递给方法(或者为null的变量),则不使用默认值。

仅当您在没有参数的情况下调用方法时才使用默认值,在这种情况下,编译器会“填写”默认值。如果您使用某些内容(包括null)或对象变量null调用该方法,则会在那里获得空值。