gpt4 book ai didi

c# - C# 中的 F# 中缀运算符?

转载 作者:行者123 更新时间:2023-12-03 15:47:56 28 4
gpt4 key购买 nike

在 F# 中,为二元运算符声明中缀运算符并不少见。但是如果我们尝试在 C# 中使用它们,它们是如何表示的,因为在 C# 中无法声明中缀运算符?
玩具示例

let ( .|. ) a b = a + b

最佳答案

如果您检查运算符(operator)的 IL 表示,您将看到:

 .method public static specialname int32
op_DotBarDot(
int32 a,
int32 b
) cil managed
很遗憾,您将无法从 C# 引用此内容。 .但是,您可以添加一个属性:
[<CompiledName("addop")>]
let ( .|. ) a b = a + b
然后你可以从 C# 中引用你的 F# dll 并通过 addop 调用它: Console.WriteLine(global::Program.addop(1,2));

3

Process finished with exit code 0.

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

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com