我正在使用泛型集合库 C5(服务器关闭 :-( )并且我有一个 IntervalHeap(T),我需要删除或替换不是最大值或最小值的 T。如何从我的 T 中获取 IPriorityQueueHandle ? C5 库源代码显示 IPriorityQueueHandle(T) 没有要实现的方法或属性,编译器认为我的 T 的 IPriorityQueueHandle(T) 实现是可以接受的。我尝试使用这样的 T:
q.Replace(t, t);
并且 C5 库抛出 InvalidCastException 因为它无法将我的 T 转换为(句柄)。