【发布时间】:2017-08-01 23:04:01
【问题描述】:
为什么首先打印“DIV/0”,然后打印“2”?
let printZero = printfn "DIV/0"
let printSuccess x = printfn "%d" x
let div ifZero success x y =
if y = 0
then ifZero
else x / y |> success
let printDiv = div printZero printSuccess
printDiv 8 4
printDiv 10 0
【问题讨论】:
-
如果你想让 printZero 表现得像一个函数,你必须添加单位作为参数。让 printZero () = ...
标签: f# currying continuations