【发布时间】:2013-05-11 23:44:56
【问题描述】:
让我有一个模板类(class Entry<T>),我想让这个类继承自两个接口(@987654322@ 和IEquatable<T>),我试过这个:
class Entry<T> where T : IComparable<T>, IEquatable<T>
{
/* Whatever in the class */
}
我已经尝试了下一个代码:
class Entry<T> : IEquatable<T>, where T : IComparable<T>
{
/* Whatever in the class */
}
但它们都不能正常工作,我不知道为什么,任何人都可以帮助我知道如何使用多个接口继承?
【问题讨论】:
-
您应该将接口中的 T 替换为类的名称,因此
IComparable<Entry<T>>除非您尝试仅比较或等于T类型而不是Entry<T>类。 -
当你说它们不能正常工作时,你应该说明你的意思,这样我们才能确切地知道你想要达到的目标。
-
是的,没错,我尝试了 IComparable
> 和 IEquatable > 但它仍然错误,它向我显示以下消息(没有装箱转换或类型参数转换从 'T' 到 'System.IComparable )当我定义一个 Entry 数组时