2015-07-10 39 views

回答

4

由於None被隱含地表示爲null,Option是參考類型。

的F#規範給出了需要的選項是一個引用類型定義如下:

[<DefaultAugmentation(false)>] 
[<CompilationRepresentation(CompilationRepresentationFlags.UseNullAsTrueValue)>]  
type 'T option = 
    | None 
    | Some of 'T 
    static member None : 'T option 
    static member Some : 'T -> 'T option 
    [<CompilationRepresentation(CompilationRepresentationFlags.Instance)>] 
    member Value : 'T 
    member IsSome : bool 
    member IsNone : bool  
0
type Option<'T> = 
     | None :  'T option 
     | Some : Value:'T -> 'T option 

FSharp Source Code示出了被引用類型。