Кажется, есть проблема с моей dequeue
функцией в классе очереди, который у меня есть.Моя dequeue
функция, которая является частью класса позиции, не возвращает правильные значения, которые были помещены в очередь в список.
Значения, которые были поставлены в очередь, являются объектами позиции, равными 2,1и -1, но когда я снимаю с очереди этот объект, я получаю 2,506216 и -1;Когда я назначаю объект *pos
объекту, у меня остаются значения по умолчанию; кажется, что функция enqueue работает правильно, когда я проверяю значения ptr
, они правильные.копировать, intial (5);копия = начальная;
if (copy.ismovelegal(posmoves, r))
{
copy.makemove(posmoves, r);
if (intial.solved(copy))
{
cin.get();
}
else
{
p.enqueue(copy);
}
}
copy.free();//clearing object private memebers
}
intial.free();
p.dequeue(o);//copy that was previous enqued is not enqued
o.geta();