小编Den*_*uia的帖子

为什么当我使用 function 关键字时这个函数是弱类型?奥卡米尔

let duplicates =
  let rec duplicates' accumulator = function
    | [] -> accumulator
    | [ item ] -> duplicates' (item :: accumulator) []
    | item :: item2 :: tail ->
      if item = item2 then duplicates' (item :: accumulator) tail
      else duplicates' (item::accumulator) (item2::tail)
  in
  duplicates' [];; 
Run Code Online (Sandbox Code Playgroud)

如果我添加第二个参数,该参数必须是“列表”并在其上使用“匹配”,则代码可以正常工作。

(另外:代码结尾和:重复 [] '参数')

如果我使用 function 关键字并使代码更简洁,则函数返回:

val duplicates : '_weak14 list -> '_weak14 list = <fun>
Run Code Online (Sandbox Code Playgroud)

ocaml functional-programming

2
推荐指数
1
解决办法
168
查看次数

标签 统计

functional-programming ×1

ocaml ×1