【发布时间】:2020-07-20 16:48:13
【问题描述】:
Creating a linked list without declaring node as a pointer 有答案。但是我想知道是否还有其他原因导致您无法将节点创建为指针,所以要清楚。
其中一个原因是新节点的作用域会死在函数之外——有没有办法解决这个问题? 还有其他原因吗?
【问题讨论】:
-
如果你真的想,也许可以解决终身问题,但工作量很大,而且很容易出错,那你为什么要做呢?跨度>
-
链接的问题标题不好,实际上是“为什么我需要动态分配的节点”,而不是“为什么需要指针”。
-
使用全局变量可以解决作用域问题(使用
extern) -
@melk,不,我只是在问。我只想知道是否不可能将节点声明为对象。或者,如果有办法,它比使用指针更复杂。例如,Landstalker 似乎已经给出了解决方案。所以,只是想知道使用节点作为对象(而不是指针)的其他问题是什么
-
你无法避免使用某种间接方式。如果一个节点包含一个节点,它包含一个节点,它包含一个节点,以此类推,它会填满整个宇宙,一切都会爆炸。
标签: c++ pointers struct linked-list