在 Ocaml 中获取变量的值

Getting value of variant in Ocaml

假设我有一个变体 v 定义为:

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

如果 v 是一个值我想做一些事情,如果 v 是一个错误我想做一些其他事情,我如何确定这一点并根据它执行不同的行为?

这就是 match 表达式的用途:

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

(就 OCaml 是一种函数式语言而言,从价值观而非行为的角度思考可能更好。但如果您愿意,OCaml 也可以是一种命令式语言。)