5
如果通用類型與null
(並且僅與null
)進行比較,則會導致編譯器將該類型限制爲可爲空(可以)並且可以是可等同的。爲什麼一個空檢查會在F#中導致一個等式約束?
爲什麼後者?看起來只是與null
比較應該可以用於可爲空,但不支持相等的類型。
我知道我可以使用Unchecked.equals
來得到可空的約束,只是想知道我是否缺少一些明顯的原因,爲什麼((=) null)
需要一個equatable參數。
好點 - 本該想出來:) –