好吧,我正在尝试用 C++ 编写一个处理双链表的程序。具体来说,该列表包含一组艺术品对象作为其节点。在这个特定的函数中,我试图通过“sell”命令删除节点,但我在几行上收到了这个错误:
错误:需要左值作为赋值的左操作数
我已经完成了我的研究,我发现这种类型的错误通常会出现在您在实际想要比较它们时尝试分配值,或者如果您尝试将值分配给常量。但是,我不认为这是我的问题。这是问题代码:
// Sell At Function: This function sells the specified artwork.
void CR_ArtCollection::sell_at(string title, ostream& log)
{
CR_ArtWorks* walker = first;
while(walker != NULL)
{
if(title == walker->get_title())
{
walker->get_next()->get_prev() = walker->get_prev(); // Error
walker->get_prev()->get_next() = walker->get_next(); // Error
delete walker;
walker = NULL;
}
else walker = walker->get_next();
}
}
如果有人能指出我正确的方向,我将非常感激。