BinaryHeap中Array的奇怪行为

时间:2014-03-25 01:49:51

标签: d phobos

我有一个类似树的结构,使用Node个对象,引用其他Node个对象。 Node是一个班级。现在,我正在编写的一个例程需要一个最小优先级队列,我正在使用std.container.BinaryHeapstd.container.Array来实现。我将它实例化如下:

Node[] r;
auto heap = BinaryHeap!(Array!(Node), "a > b")(Array!Node(r));

作为例程的一部分,我使用heap将元素插入insert并使用removeAny从中删除元素。现在,例程正常工作,但之后,由于节点丢失,树状结构中断(我的不变量失败)。这里发生了什么,为什么会发生这种情况?

1 个答案:

答案 0 :(得分:1)

可能是http://d.puremagic.com/issues/show_bug.cgi?id=6998 - std.container.Array销毁类实例