我已经将使用的
新艺术家AVL树
IComparable
更改为 IComparable<Artist>
,但是出现了错误:
'RecordCollection.Artist' 没有实现接口成员 'System.IComparable.CompareTo(object)'
class Artist : IComparable<Artist>
我添加了一个CompareTo方法。
不确定这个错误的含义,希望能提供任何有助于解释我为什么会得到这个错误的帮助。
class Artist : IComparable<Artist>
{
private String Name;
private int NoMem;
public Artist(string Name, int NoMem)
{
this.Name = Name;
this.NoMem = NoMem;
}
public int CompareTo(Artist other)
{
if (other == null) return 1;
else
return 0;
}
}
新艺术家AVL树
AVLTree<Artist> treeAVL = new AVLTree<Artist>();
IComparable<Artist>
,而不是IComparable
。 (请注意,IComparable<T>
不继承自IComparable
。) - O. R. MapperIComparable
替换为IComparable<T>
,还是附加了IComparable<T>
。例如,在partial
类的另一个部分中是否请求了IComparable
。 - Marc Gravell<T>
;你不能通过一个泛型方法来实现一个非泛型的接口方法。 - Marc Gravell