我正在尝试:
let mutable ncon : NCon = null
得到:
Error 1 The type 'NCon' does not have 'null' as a proper value
以这种方式声明类型
type NCon(settings : ISettings) = ...
我打算将它用作静态属性,稍后当用户完成设置时启动它,那么我做错了什么?为什么我不能用null启动mutable类型?
我必须使用选项吗?所以要使它成为无或有些?
答案 0 :(得分:6)
您必须向NCon-Type提供AllowNullLiteral,如下所示:
[<AllowNullLiteral>]
type NCon(settings : ISettings) = ...
这是因为F#阻止你使用Null ......这不是一个坏主意恕我直言
提出其他问题: 是的我宁愿使用一个选项 - 我也会考虑使用ref-cell - 但这取决于你想用它做什么。