我试图使用重载运算符方法将一个队列的条目复制到另一个队列中,但我的函数出错了。我不知道如何以任何其他方式访问队列“原始”的值,而不是下面的方式:
struct Node
{
int item;
Node* next;
};
class Queue
{
public:
// Extra code here
void operator = (const Queue &original);
protected:
Node *front, *end;
};
void Queue::operator=(const Queue &original)
{
//THIS IS WHERE IM GOING WRONG
while(original.front->next != NULL) {
front->item = original.front->item;
front->next = new Node;
front = front->next;
original.front = original.front->next;
}
}