作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不明白如何获取 2 个 LinkedList,并将其中的对象相互添加。即,将 LinkedList2 的节点添加到 LinkedList1。
我目前的代码是我试过的,但我不知道如何访问多个对象,因为 cygwin 告诉我我只能有一个参数。
int main()
{
LinkedList firstList, secondList;
firstList += secondList;
}
void LinkedList::operator +=(LinkedList lst)
{
Node* temp = lst.get_head();
while (temp != NULL)
{
Node::value_type student = temp->get_data();
"WHAT DO I ADD HERE".addToTail(student);
temp = temp->get_next();
}
delete temp;
}
让我们在“我在这里添加什么”中说,因为 Cygwin 说我只能传入一个对象,所以我希望能够将第二个列表中的对象添加到第一个列表中。但我不明白传递的是什么,无论是列表 1 还是列表 2,以及如何添加到另一个。
最佳答案
在查看您的问题时,您还应该明白,在添加“LHS += RHS”时,您是在左加右加。这意味着您正在传递 RHS(右侧),在您的情况下它似乎是 secondList。如果你使用“This->addToTail”应该没问题。此外,您不需要 Delete,因为它只是一个局部变量,不会从堆栈中占用内存。
关于c++ - 如何用 2 个 LinkedLls 重载 +=,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57674142/
我是一名优秀的程序员,十分优秀!