繁体   English   中英

C#:泛型语法问题

[英]C#: Generics syntax question

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

public class EditItems<T> : Form

可以使用where T : IComparable ,如其他答案所示。 我发现通常用以下方法约束它会更有用:

public class EditItems<T> : Form where T : IComparable<T>

也就是说,它必须是一种与自身具有可比性的类型。

一方面,对于值类型,这避免了装箱。 另一方面,这意味着您不太可能尝试比较两个没有真正可比性的值。

public class EditItems<T> : Form where T : IComparable
public class EditItems<T> : Form where T : IComparable

使用类型约束 (请参见MSDN ):

public class EditItems<T> : Form where T : IComparable
public class EditItems<T> : Form where T : IComparable
{...}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM