【问题标题】:Which way of these two pattern matching is more preferred?这两种模式匹配中哪种方式更受欢迎?
【发布时间】:2013-02-17 01:07:43
【问题描述】:

我只是好奇,这两个函数会做同样的事情。但是我应该使用哪一个?

let f a =
    match a with
        b -> a;; 
let f a =
    match a with
        b -> b;;

还是只取决于您的喜好?
我觉得第二个会更好,但我不确定。

【问题讨论】:

    标签: performance functional-programming pattern-matching ocaml preference


    【解决方案1】:

    性能方面没有区别。样式方面的b -> a 有点问题,因为您有一个未使用的变量b_ -> a 会更有意义。除此之外,这只是偏好。

    我个人更喜欢_ -> a 而不是b -> b,因为它不会引入额外的变量。

    PS:我假设在你的真实代码中,除了b 之外还有更多的情况——否则你可以写let f a = a

    【讨论】:

    • 感谢您的解释!
    【解决方案2】:

    另外,在您的特定示例中,我将使用 function 重写

    let f = function
          | b -> b    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-29
      • 2015-11-01
      相关资源
      最近更新 更多