函数接受的参数F#太多

  • 本文关键字:太多 参数 函数 f#
  • 更新时间 :
  • 英文 :


我有以下代码。我明确定义了返回类型为boolean

let inputChecker (romanNumber:list<char>) :bool = function
   | [] -> false
   | head::tail when head<= tail.Head && tail.Head<=tail.Tail.Head  -> false 
   | _ -> true

但我认为它将CCD_ 2作为一个参数。我也尝试过(:bool),但仍然不起作用。

如果使用function,则不会在签名中指定参数:

let inputChecker: (char list -> bool) = function
   | [] -> false
   | head::tail when head<= tail.Head && tail.Head<=tail.Tail.Head  -> false 
   | _ -> true

如果要明确指定参数,请使用match

let inputChecker (romanNumber: char list): bool = 
   match romanNumber with
   | [] -> false
   | head::tail when head<= tail.Head && tail.Head<=tail.Tail.Head  -> false 
   | _ -> true

类型注释不是必需的,您可以跳过它们。

最新更新