let f (o:obj option) =
o
|> Option.bind(
function
| :? byte[] as b -> Some b
| _ -> None)
但是没有编译
以下内容可能会在运行时失败,而不是仅在它已经是正确的类型时才会被强制转换,因此与我想要的行为不匹配
let f (o:obj option) = o |> Option.map(fun b -> b :?> byte[])
如何测试obj
为byte[]
?