2015-09-06 125 views

回答

5

这里是一个可能实现:

包括
let int_of_bool b = if b then 1 else 0 

库OCaml的电池具有的功能to_int在其BatBool module

+0

有什么理由为什么OCaml没有特定的功能来将布尔变换为整数? – hlin117

+0

在想到这个之后,我决定它不是你经常需要做的事情。 OCaml标准库一直相当斯巴达 - 在我看来它也是*斯巴达。像Core和Batteries这样的其他库正在填补更加丰富,一致的功能集,即使它们不重要和/或不常用。 –

+3

@ hlin117:从概念上讲,布尔值和整数是可转换的没有理由。为什么是真的1?为什么是假的0?为什么不是其他号码?除了那些整数是C中的比较运算符的结果之外,我可以想到没有任何理由,它与OCaml非常不相关。 – newacct