我stack
正在OCaml
使用array
.
我希望它接受任何类型。这是我实施的一部分,我的问题也是关于它的。
type 'a stack = {mutable storage : 'a array; mutable n : int};;
let create () = {storage = Array.make 2 0; n = -1};;
因此,在上面,当我定义堆栈的类型时,就可以了。storage
is a which is a array接受'a array
任何类型。
但是当我实现该create
功能时,我遇到了问题。我怎样才能初始化一个'a array
?我不能,对吧?当我创建它时,我必须给它一个初始值,对吗?
那么如何使用具有多态性的数组创建堆栈呢?