C#:泛型语法问题

Aus*_*nen 1 c# generics

要求T的语法在此类定义中也是IComparable?

public class EditItems<T> : Form
Run Code Online (Sandbox Code Playgroud)

Jon*_*eet 11

可以只使用where T : IComparable如通过其他的答案.我发现通过以下方式约束它通常更有帮助:

public class EditItems<T> : Form where T : IComparable<T>
Run Code Online (Sandbox Code Playgroud)

这表明它必须是一种与自身相当的类型.

首先,对于价值类型,这避免了拳击.另一方面,它意味着你不太可能尝试比较两个值不属于真正的可比性.


Dar*_*rio 7

public class EditItems<T> : Form where T : IComparable
Run Code Online (Sandbox Code Playgroud)