OCaml-例外

时间:2018-09-30 14:29:34

标签: exception ocaml

对于1 <= a <= 30和1 <= b <= n

,我有一个例外代码

我有:

exception invalid_input

let n = 5

let k = 6

if n<1 || n > 30 || k<1 || k>n  then raise Invalid_input
else ()

但是编译器在if then else行中说语法错误。 怎么了?

1 个答案:

答案 0 :(得分:0)

问题是您要混合使用表达式和定义。 经过一些定义后,计算有效表达式的惯用方式是 使用let () = ...

let () = if n<1 || n > 30 || k<1 || k>n  then raise Invalid_input

否则,您可以使用;;

将该表达式与上面的定义分开
;; if n<1 || n > 30 || k<1 || k>n  then raise Invalid_input