【问题标题】:Does such an interface in c# exists: IADD<T>? [duplicate]c#中是否存在这样的接口:IADD<T>? [复制]
【发布时间】:2021-08-09 18:38:38
【问题描述】:

我想为实现了 + 运算符的可枚举元素编写一个通用求和函数。

public T Add<T>(IEnumerable<t> list)=> list.Aggregate((x,y)=>x+y)

我要说的是 T 用一个相同类型的元素实现了 + 运算符。

with T:IADD<T>

没查到c#中是否存在这样的接口

【问题讨论】:

  • @RyanWilson 我不这么认为:docs.microsoft.com/en-us/dotnet/api/… 。只有当你给它一个从这个类型到数字的函数时,它才适用于任何类型。我想要什么:我有自己的带有 + 运算符的音量。我想将 Add 与卷列表一起使用,它会返回一个卷
  • 为什么不重载Volume 类的+ 运算符呢?为什么是接口?重载的运算符和接口都需要特定于类的实现,对吗?所以现在我看不到界面的优势。
  • @Nenad 我认为您标记了错误的人。我不是 OP。

标签: c#


【解决方案1】:

没有。有一个 proposal to add something like this,但(按位置)它只是“正在考虑中”,尚未指定用于 vNext(撰写本文时为 C# 10)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 2012-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多