今天我在一個構造函數中創建了一個默認參數值。爲什麼我不能使用String.Empty作爲默認參數值?
public SomeClass (String something = String.Empty)
{
// ...
}
編譯器抱怨。
「something」的缺省參數值必須是編譯時間 常量。
我的印象是Empty類的String類是一個編譯時常量。
.field public static initonly string Empty
難道我誤解了編譯時常量的含義,還是隻是我更需要接受的古怪呢?
錯誤消息表明您的印象是'erm不完全正確。 –
更完整的討論在這裏:http://stackoverflow.com/questions/507923/why-isnt-string-empty-a-constant –