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

标签 c# .net f# operators clr

我偶然发现可以在 F# 中定义自定义运算符。此外,我相信可以在 C# 中重用 F# 代码。

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

最佳答案

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

例如

let (|?) a b = ...

将作为 op_BarQmark 提供.

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

关于c# - 在 C# 中使用自定义 F# 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22941616/

相关文章:

f# - MonoFramework 的 FSharp 项目的目标?

f# - 有没有办法在线进行多值比较?

c# - 我怎么知道我的应用程序没有被添加到防火墙?

c# - 不允许请求的注册表访问

c# - .NET 中的序列化

.net - 在 Request.Form 中搜索控件/解析 NameValueCollection

.net - GAC 的位置在哪里?

f# - 类型 'obj' 不是接口(interface)类型

c# - 单元测试 void 方法

c# - 线程池程序在更快的服务器上运行得更慢