ocaml - 如何根据 Ocaml 中的条件分配值?

标签 ocaml

我想表达如下内容:

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/

相关文章:

OCaml中模块的继承

types - ocaml %identity 函数

functional-programming - 是否可以在 Ocaml 中实现罗素悖论?

python - 在 python 中集成 OCaml - 如何从 python 中保持 ocaml session ?

arrays - 从数组元素创建列表,生成数字序列

list - 将整数附加到 Ocaml 中的列表

ocaml - 如何在 Oasis 中添加额外的警告?

functional-programming - OCaml:存储一些稍后使用的值是否会引入 "side effects"?

ocaml - 如何静默加载顶层模块

regex - Ocaml - 正则表达式匹配以逗号分隔的单词不起作用