1
我有以下的升F功能麻烦:FSharp选项和空
let compare (a:int option list) (b:int option list) =
let r =
if a.Tail = [None] && b.Tail = [None] then
[None]
elif a.Tail = [None] then
[b.Head;None]
elif b.Tail = [None] then
[a.Head; None]
else
if a=b then
a
else
[None]
r
当我用下面的参数运行它
compare [Some 1] [Some 0]
答案是
[null]
而不是
[None]
有人可以解释为什么;谢谢!
比较,您最好不要重新定义它,因为它已经存在。 – BLUEPIXY 2011-12-18 21:38:54