Ken*_*Ken 7 c# polymorphism numbers
我想写一个可以接受任何数字的C#方法.就像是:
public static T Sum(T a, T b) where T : number { // (not real code)
return a + b;
}
Run Code Online (Sandbox Code Playgroud)
但我没有在C#中看到一个"数字"基类,就像我用过的大多数其他语言一样.数值类型是IComparable,IFormattable,IConvertible,IComparable和IEquatable,但似乎没有任何算术功能.它们都是结构,除了物体外没有明显的共同超类.(请原谅我,如果我搞砸了这里的意思,因为我不太熟悉C#结构,而且正是他们对类的所有方式都不太熟悉.)
我是否遗漏了某些内容,或者是否无法在C#中编写一个执行"a + b"的方法而不在"+"的上下文中明确指出a和b是什么?