在进行面向对象设计时,将使用简单值类型的方法集合合并到泛型方法中是否更好?例如:
public int Sum(int x, int y)
// Overload with float.
public float Sum(float x, float y)
合并为:
public T Sum<T> (T x, T y)
谢谢
斯科特
最佳答案
一般来说是的,但是,特别是对于您的示例(对两个参数求和) - 您不能使用泛型来做到这一点,因为 +
运算符不是您可以约束的任何接口(interface)的一部分你的泛型类型参数:)
(注意:这是我的 C# 部分,用其他语言可能仍然可行)
关于c# - 具有值类型的重载方法是否应该合并为泛型方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1987136/