C#优先级队列,通用类型<;T>;转换 公共类优先级队列:IPriorityQueue 其中T:i可比较
因此,我用上面的头创建了一个优先级队列类,并尝试将其用于另一个类C#优先级队列,通用类型<;T>;转换 公共类优先级队列:IPriorityQueue 其中T:i可比较,c#,generics,queue,priority-queue,C#,Generics,Queue,Priority Queue,因此,我用上面的头创建了一个优先级队列类,并尝试将其用于另一个类 public class PriorityQueue<T> : IPriorityQueue<T> where T : IComparable 私有静态优先队列PQ; 看起来这应该很好,但我收到了这个错误 在泛型方法namespace.PriorityQueue中,Mynamespace.Order不能用作类型参数T。没有从名称空间.Order到
public class PriorityQueue<T> : IPriorityQueue<T>
where T : IComparable
私有静态优先队列PQ;
看起来这应该很好,但我收到了这个错误
在泛型方法namespace.PriorityQueue
中,Mynamespace.Order
不能用作类型参数T
。没有从名称空间.Order
到System.IComparable的隐式转换
我真的不明白那是在告诉我做什么。这是否意味着我的IComparable
实现不足以实现此目的,或者我使用的是某种糟糕的语法?它说,您的泛型类型参数(即Order
type)应该实现接口。Doh。非常感谢。我已经注释掉了我的接口,后来忘了删除它们。再次感谢。
private static PriorityQueue<Order> PQ;