4

我只是好奇,這兩個功能會做同樣的事情。但是我應該使用哪一個?這兩種模式匹配更適合哪種方式?

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

或者它只是取決於您的偏好?
我覺得第二個會更好,但我不確定。

回答

8

表現明智沒有區別。風格明智b -> a是有點問題,因爲你有一個未使用的變量b_ -> a會更有意義。除此之外,這只是偏好。

我個人更喜歡_ -> a而不是b -> b,因爲它不會引入額外的變量。 PS:我假設在你的真實代碼中有更多的情況,而不僅僅是b - 否則你可以只寫let f a = a

+0

謝謝您的解釋! – octref 2013-02-17 03:53:23

1

此外,在具體的例子我想重寫使用function

let f = function 
     | b -> b