使用CustomObject实例化我的通用优先级队列时出现以下错误。当我用整数实例化时,它运行良好。任何人都可以帮我解决这个问题。
错误出现在网上:
PQueue<CustomObject> pq = new PQueue<CustomObject>();
错误CS0311:泛型类型或方法
Heap.CustomObject' cannot be used as type parameter
Heap.CustomObject'中的类型Heap.PQueue<T>'. There is no implicit reference conversion from
T' `System.IComparable'(CS0311)(堆)
答案 0 :(得分:5)
您的通用约束需要IComparable<T>
,但您的CustomObject
仅实施IComparable
。您需要实施IComparable<CustomObject>