OCaml 中的函数接受一个整数输入和 returns 给它的前一个值

Function in OCaml that takes an integer input and returns the previous value that it was given

对于我的一项作业,我必须在 OCaml 中编写一个函数,该函数接受一个整数参数和 return 前一个整数参数。首次调用函数时,函数只是 returns 一个零。

类型必须是:

val prev : int -> int = <fun>

这是我目前拥有的:

let prev = 
    let x = ref 0 in
    fun n ->        
        (Printf.printf "prev value: %i." !x);
        (x := n)    

;;

我不知道如何简单地 return 以前的值而不是打印它。我打印了该值以确保它得到更新,但我不明白如何将 return 类型设为 "int".

如有任何帮助,我们将不胜感激!谢谢!

如果函数体由多个表达式组成,用;分隔,最后一个表达式就是函数的值。

我希望这是一个足够好的提示,因为你已经非常接近你想要的了。