Node
我有一个使用引用其他对象的对象的树状结构Node
。Node
是一类。现在,我正在编写的例程之一需要一个最低优先级队列,我正在使用std.container.BinaryHeap
and来实现它std.container.Array
。我将其实例化如下:
Node[] r;
auto heap = BinaryHeap!(Array!(Node), "a > b")(Array!Node(r));
作为例程的一部分,我将元素插入heap
usinginsert
并从中删除元素 using removeAny
。现在,该例程正常工作,但之后,由于节点丢失,树状结构中断(我的不变量失败)。这是怎么回事,为什么会这样?