2010-07-28 31 views

回答

8

只能有一個當每個箭頭/結果後衛,所以像這樣的工作:

let id1 = 0 

match p1, p2 with 
| Fluid, Particle id2 
| Interface _, Particle id2 when id1 = id2 -> doSomething() 
| _ -> doSomething() 

(注意在這種情況下,在這兩個項目還是必須綁定同一組標識符使在這兩種情況下沒有IDENTIFER留下未初始化)

或可選擇地添加第二個動作/結果:

match p1, p2 with 
| Fluid, Particle id2 when id1 = id2 -> doSomething() 
| Interface _, Particle id2 when id1 = id2 -> doSomething() 
| _ -> doSomething() 
+0

謝謝您的回答。知道何時警衛對模式組中的所有案件有效是很好的事情。 – 2010-07-28 09:17:33