4
我有一个区分联合类型:F#:垂头丧气鉴别联合
type F =
| A of int
| B of float
假设我有一个已经被过滤,得到A型的唯一对象f的列表:
let listOfAs=list.filter (fun f -> match f with | A(f') -> true | _ -> false)
如何我可以使用F的结果列表而不需要我的代码中的任何模式匹配吗?编译器不喜欢直接的演员,如
list.map (fun f -> int f) listOfAs
在一个侧面说明,该代码可以由一个被缩短通过用'function'关键字替换'fun f - >'并删除'match'行。 – Vandroiy 2014-11-24 20:00:25
是的,它可以是:-)我通常不会在显示代码时这样做,因为它需要一次解释两件事情! – 2014-11-25 14:09:15