我想表达如下内容:
if b then
let value = ... in
else
let value = .... in
let double = value * 2
但似乎 Ocaml 不允许这种语法。如果我不想重复
let double = value * 2
部分,我必须定义value
作为引用?非常感谢你!
最佳答案
你的麻烦是你在考虑这个命令(有条件地分配给一个变量)而不是功能上(将一个名称绑定(bind)到表达式的结果):
let value = if b then ... else ... in
let double = value * 2
关于ocaml - 如何根据 Ocaml 中的条件分配值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6739902/