首页 > 解决方案 > 在匹配表达式中调用 2 个或更多函数

问题描述

我是 OCaml 的初学者。我很想知道,从语法上讲,如何在匹配表达式中调用两个或更多函数。或者这可能吗?

例如 :

let rec foo l:list = 
  match l with
  | [x,y] -> (foo1 x) (foo2 y)
  | _ -> doSome

我尝试过使用;运算符,但这似乎用于其他用途。我尝试了不同的括号组合,但在所有情况下我都得到 这不是一个不能foo1 x.

标签: ocaml

解决方案


你只需要一个分号(没有开始/结束)。您不需要括号(它们不会受到伤害,但它们并不是特别惯用的 OCaml)。

let rec foo l : 'a list = match l with
| [x,y] -> foo1 x; foo2 y
| _ -> doSome

推荐阅读