抱歉,标题模糊,但这部分问题是这两种语法样式分别是什么:

let foo1 x =
    match x with
    | 1 -> "one"
    | _ -> "not one"

let foo2 = function
    | 1 -> "one"
    | _ -> "not one"

另一部分是两者之间有什么区别,什么时候我要使用其中一个?

最佳答案

匹配版本称为“模式匹配表达式”。该功能版本称为“模式匹配功能”。在spec的6.6.4节中找到。

一个使用另一个是一个风格问题。当我需要定义仅是match语句的函数时,我更喜欢仅使用函数版本。

关于syntax - F#显式匹配vs函数语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1839016/

10-12 07:33
查看更多