2016-03-28 44 views
0

我只是想知道这两行之间的区别。 listData是顺便说一下的。在无序链接列表中添加节点

temp->next = listData; 

listData = temp->next; 

这里是将节点添加到一个无序链表

NodeType* temp; 
temp = new NodeType; 
temp->data = item; 
temp->next = listData; 
listData = temp; 
length++; 

所以,如果我做了完整的代码listData = temp->nexttemp->next = listData代替 会发生,或者可以什么有人用最简单的术语解释它的含义。每当我看到右侧或左侧的->时,都会让我感到困惑。谢谢!

回答

0

->只是表示您正在访问指针引用,没有什么更多也没有。

当你看到一个等号时,这意味着任何在右侧分配给左侧(除非你重写等号),这通常是你不会做的。

  1. temp->next = listData

要设置的listData作为下一个临时的。

  • listData = temp->next
  • 你是下一个临时的作为的ListData

    既然你要添加一个名为temp到一个LinkedList节点设置,你会希望是前者。考虑一个链表,并且在两个节点AB之间添加一个节点temp。你会:

    1. 未来的A设置为temp

    2. temp旁边B

    这个过程中的后者是temp->next = listData在做什么。 (我假设listData是包括B之后的链接列表的其余部分。

    +0

    谢谢你清除那个 – Carlitos