在C#中使用自定义F#运算符

本文关键字:自定义 运算符 | 更新日期: 2023-09-27 17:57:29

我偶然发现了一个事实,即可以在F#中定义自定义运算符。此外,我相信在C#中重用F#代码是可能的。

是否可以在F#中创建一个自定义运算符,在C#中引用项目,然后在C#中重用该运算符?例如,假设我将.?运算符定义为F#中的某个内容,那么我可以在C#项目中以某种方式重用它吗?

在C#中使用自定义F#运算符

从C#中可以很好地使用自定义运算符。这些名称是自动生成的,格式为op_<symbol...>(请参阅MSDN上的Overloaded Operator names)。

例如

let (|?) a b = ...

将作为CCD_ 3可用。

然而,正如Mau在他的评论中指出的那样,您将只能从C#中将其用作方法,而不能用作运算符