泛型类型的默认值?

有没有可能做一些像

public class PriorityQueue<TValue, TPriority=int> where TPriority : IComparable

(注意 =int) ?

在你建议之前,是的,我知道我可以再加一句:

public class PriorityQueue<TValue> : PriorityQueue<TValue, int> { }

但我想知道是否有可能做到这一点,作为一个帕拉姆。

33579 次浏览

没有。在 C # 中对于泛型类型没有默认类型的选项。

如果您需要这种行为,那么第二个示例通常是可用的“最佳”选项。