我正在阅读有关 .NET 7 和 INumber
的以下内容:
它给出了添加两个 INumber 泛型值的示例,我尝试在 F# 中复制该值,但没有成功。
let add<'T when 'T :> INumber<'T>>
(left : 'T) (right: 'T) : 'T =
left + right
这给出了“声明的类型参数'T无法在运行时解析。 当我尝试不同的方式时,要非常清楚:
let add<'T when 'T :> INumber<'T>>
(left : 'T) (right: 'T) : 'T =
INumber<'T>.``+`` left right
“INumber<'T'>.+
未定义。”
请有人帮助我了解如何进行这项工作,并提供此类内容的正确格式?
最佳答案
如 .NET 7 release notes 中所写要在 Visual Studio 中支持 .NET 7,您需要安装 17.4+ 版本:
You need Visual Studio 17.4 latest preview to use .NET 7.0 on Windows. On macOS, you need the latest version of Visual Studio for Mac. The C# extension for Visual Studio Code supports .NET 7.0 and C# 11.
关于generics - 如何在 F# 中正确使用 .NET 7 中的 INumber?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74379268/