Ste*_*sen 23
只需实现一个op_Explicit静态成员即可
type SomeType() =
static member op_Explicit(source: SomeType) : int =
1
Run Code Online (Sandbox Code Playgroud)
然后你可以使用相应的F#显式转换运算符
SomeType() |> int
Run Code Online (Sandbox Code Playgroud)
你可以通过注意类型签名上的静态成员约束来看到它的工作原理 int
^a -> int when ^a : (static member op_Explicit : ^a -> int)
Run Code Online (Sandbox Code Playgroud)