new chainNode<T>(theElement,Null);
theElement是尾部要插入的元素,
null下一个节点指向的值
这里else那一段的代码很不理解,
尾节点的下一个节点指向要插入的元素的指针,
但是第二步-------> lastNode=newNode,
把newNode直接赋给了原先的尾节点
,前一步不是失效了吗?
new chainNode<T>(theElement,Null);
theElement是尾部要插入的元素,
null下一个节点指向的值
这里else那一段的代码很不理解,
尾节点的下一个节点指向要插入的元素的指针,
但是第二步-------> lastNode=newNode,
把newNode直接赋给了原先的尾节点
,前一步不是失效了吗?
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
没有失效,上一步赋值的是lastNode指针指向对象的next成员,第二步写入的是lastNode指针本身,二者写入的内存不一样,不会破坏前面写入的数据。逻辑上, lastNode指针应该指向newNode。