相关疑难解决方法(0)

模式匹配和构造函数

为什么我在编写这种模式匹配时会出错:

type t = A of int | B of float

let f = function
        | (A i | B f) -> true
        | _ -> false
Run Code Online (Sandbox Code Playgroud)

要么

let f = function
        | A i | B f -> true
        | _ -> false
Run Code Online (Sandbox Code Playgroud)

错误:变量f必须出现在此|的两侧 图案

let f = function
        | (A i | B i) -> true
        | _ -> false
Run Code Online (Sandbox Code Playgroud)

要么

let f = function
        | A i | B i -> true
        | _ -> false
Run Code Online (Sandbox Code Playgroud)

错误:此模式匹配float类型的int类型的值, …

ocaml functional-programming pattern-matching

1
推荐指数
1
解决办法
418
查看次数