Как определить явный оператор в F#?
Как вы реализуете эквивалент в C#explicit
оператор в F#? Его поддержал?
1 ответов
просто реализовать op_Explicit
статический элемент, как
type SomeType() =
static member op_Explicit(source: SomeType) : int =
1
и затем вы можете использовать соответствующий оператор явного преобразования F#, такой как
SomeType() |> int
вы можете немного увидеть, как это работает, отметив статическое ограничение члена на сигнатуру типа int
^a -> int when ^a : (static member op_Explicit : ^a -> int)