我已经从使用IComparable转换为IComparable< Artist>但是我收到了错误
‘RecordCollection.Artist’ does not implement interface member ‘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>();
解决方法:
您必须确保您在其中定义Artist的项目编译没有错误.否则你的其他项目将不会接受更改,仍然认为Artist实现IComparable而不是IComparable< T>.那是你得到编译时错误的时候:
‘RecordCollection.Artist’ does not implement interface member ‘System.IComparable.CompareTo(object)’
也没有技术上需要实现CompareTo(对象),它也无法解决您的问题.