我正在完善我的代码,并注意到在某些地方我有可选参数,默认值为空字符串。我将其更改为空字符串类的默认值,你猜怎么着!显然空引号和空引号之间有区别string.Empty
。什么鸭子?! (有意拼写错误)
private void Khaboom(String parameter = "") { ... }
private void Bazinga(String parameter = String.Empty) { ... }
谁能告诉我为什么鸭子会这样Khaboom
工作的同时Bazinga
不是吗?!
错误消息抱怨道:
“参数”的默认参数值必须是编译时常量。
嗯...它is!
Empty
定义如下:
public static readonly string Empty
这不是一个常数。这是一个只读字段。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)