如何使用 List.fold_left 填充 ocaml 中空字符串映射的键?

How to use List.fold_left to populate keys of empty string map in ocaml?

我有一个现有列表,我想将其移动到一个空的 StringMap 中。我只想让这个列表中的项目成为所述 StringMap 的键。

这就是我现在正在尝试做的事情:

utop # List.fold_left StringMap.empty [1,2,3];;
Error: This expression has type 'a StringMap.t
       but an expression was expected of type 'b -> 'c -> 'b

但显然这是错误的,因为我收到了上面的错误信息

我该怎么办?提前致谢

List.fold_left 接受三个参数:要“折叠”的函数、初始值和要处理的列表。您只提供两个参数。您需要提供一个函数来处理列表的每个元素并生成中间结果。

下面是一个将列表的所有元素相加的示例:

# List.fold_left (fun a b -> a + b) 0 [1;3;5;7];;
- : int = 16

您需要一个类似上述的函数,只是它应该向地图添加一个元素。