在Ocaml中获得变体的价值

时间:2015-10-19 23:13:43

标签: ocaml variant

说我有一个由以下定义的变体v:

type value =    
    | Value of int
    | Error of string;;

如果v是一个值,我想做点什么,如果v是一个错误,我想做些什么,我怎样才能确定它并根据它执行不同的行为?

1 个答案:

答案 0 :(得分:2)

那是match表达式的用途:

match v with
| Value n -> (* Something with n *)
| Error s -> (* Something with s *)

(就OCaml是一种函数式语言而言,从价值而不是行为的角度思考可能更好。但如果你愿意,OCaml也可以成为一种必要的语言。)