我想做:
let Some(x) = bar in ...
但我不能这样做,除非我这样做
let Some(x) as idontcare = bar in ...
有没有更好的说法“我不在乎整个模式,只匹配内部”
(我会使用
_
但这不会解析,所以我使用 __
代替)是的,我知道这是部分的,我只是在做一个快速脚本。
编辑:这也只是一个内置 sum 类型的例子,所以
Option.get
不是通用的;另外,我希望它像 Haskell let-bindings 一样内联。
最佳答案
let Some(x) = bar
定义了一个新函数
Some
,隐藏现有的构造函数。相反,你想要:let (Some(x)) = bar
关于f# - F# 中 let 绑定(bind)中的模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24368436/