List.rev-此值不是函数,无法应用

时间:2019-10-29 15:30:17

标签: f#

可能是什么问题?缺少一些东西,但是到底是什么?

“ List.rev”给出错误-该值不是函数,无法应用。

我更改了参数,但是没有用。

let rec b c = match c with
                | [] -> [] 
                | d :: e -> d :: (b List.rev e)

输出应该正确。

1 个答案:

答案 0 :(得分:2)

我相信您的问题在这里:

(b List.rev e)

函数b是一个采用单个参数-c的递归函数。在上面的代码中,您传入了两个参数-List.rev函数和列表e

您可能想要这样:

let rec b c =
    match c with
    | [] -> []
    | d :: e -> d :: (b (List.rev e))