执行功能列表

时间:2012-01-29 16:14:50

标签: list function ocaml

我想应用存储在列表中的函数

let functions = [(fun () -> print_string "fun 1"); (fun () -> print_string "fun 2")]

使用像List.iter这样的高阶函数来显示“fun 1”和“fun 2”

有办法吗?

1 个答案:

答案 0 :(得分:5)

以下是这样做的方法:

List.iter (fun f -> f()) functions

您的列表包含签名为unit -> unit的函数。因此,如果您提供()作为每个函数的参数,它们将返回unit,这在List.iter内显而易见。

相关问题