OCaml堆栈的元组

时间:2012-09-17 20:44:57

标签: stack ocaml tuples

我正在尝试使用以下代码片段在OCaml中创建一堆元组

let (k : (string*string) Stack.t) = Stack.create ;;

但是当这样做时,我在编译时会出现错误

Error: This expression has type unit -> 'a Stack.t
   but an expression was expected of type (string * string) Stack.t

对OCaml来说是个新手。有人可以指出我出错的地方吗?

1 个答案:

答案 0 :(得分:8)

Stack.create是一个函数,它取值()(类型为unit)并返回堆栈。

所以你应该这样做:

let (k : (string*string) Stack.t) = Stack.create ();;

如果你写Stack.create,你只是谈论功能,而不是结果。