我之前在 Java 中广泛使用过链表,但我对 C++ 还很陌生。我正在使用项目中提供给我的这个节点类,效果很好
class Node
{
public:
Node(int data);
int m_data;
Node *m_next;
};
但我有一个问题没有得到很好的回答。为什么需要使用
Node *m_next;
指向列表中的下一个节点而不是
Node m_next;
我明白最好使用指针版本;我不想争论事实,但我不知道为什么这样更好。关于指针如何更好地分配内存,我得到了一个不太明确的答案,我想知道这里是否有人可以帮助我更好地理解这一点。
这不仅是更好的方法,而且是唯一可能的方法。
如果您存储了Node
object在其自身内部,什么会sizeof(Node)
是?这将是sizeof(int) + sizeof(Node)
,这将等于sizeof(int) + (sizeof(int) + sizeof(Node))
,这将等于sizeof(int) + (sizeof(int) + (sizeof(int) + sizeof(Node)))
等至无穷大。
这样的物体是不可能存在的。它是不可能的.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)