1

私はしようとしています:

let mutable ncon : NCon = null

そして取得:

Error   1   The type 'NCon' does not have 'null' as a proper value

型がこのように宣言されている場所

type NCon(settings : ISettings) = ...

私はそれを静的プロパティとして使用し、ユーザーが設定を終了するときに後で初期化する予定です。何が間違っていますか? 可変型を null で初期化できないのはなぜですか?

オプションを使用する必要がありますか? 代わりに None または Some にするには?

4

1 に答える 1

6

次のように、AllowNullLiteralをNCon-Typeに指定する必要があります。

[<AllowNullLiteral>]
type NCon(settings : ISettings) = ...

これは、F#がNullの使用を妨げるためです...悪い考えではありませんIMHO

他の質問へ:はい、私はむしろオプションを使用したいと思います-そして私もref-cellを使用することを検討します-しかし、これはあなたがそれで何をしたいかに依存します。

于 2012-10-26T07:10:59.693 に答える