代码之家  ›  专栏  ›  技术社区  ›  Jared Updike

c5 generics collection intervalheap<t>-从t获取ipriorityqueuehandle以进行替换或删除操作

  •  1
  • Jared Updike  · 技术社区  · 15 年前

    我正在使用 Generics Collection library C5 (服务器关闭:-()并且我有一个IntervalHeap(T),我需要删除或替换一个不是最大值或最小值的T。如何从T中获取IPriorityQueueHandle?c5库源代码显示ipriorityqueuehandle(t)没有要实现的方法或属性,编译器认为我对t的ipriorityqueuehandle(t)的实现是可以接受的。我试着用这样的T:

    q.Replace(t, t);
    

    c5库抛出一个invalidCastException,因为它不能将t转换为(句柄)。

    1 回复  |  直到 15 年前
        1
  •  2
  •   Jared Updike    15 年前

    当我调用q.add(ref t.handle,t)时,它看起来可以得到一个ipriorityqueuehandle(t),当我以后需要用q.replace(t.handle,t)在q中修改t的优先级时,它可以保留在我自己的字段(t.handle)中并将其拉出。