我是一个初学者,很难理解如何动态分配一个对象,然后将另一个动态分配的对象的内存地址传递给第一个对象的成员。
给出一个包含整数和指向相同类型的另一个结构的指针的结构,如下所示:
struct Node {
int data;
Node *next_ptr;
};
会:
Node *node1 = new Node();
Node *node2 = new Node();
为Node
类型的对象分配内存还是仅创建指向对象node1
的指针?
node1->next_ptr = node2
是解决方案吗?
答案 0 :(得分:1)
您好,欢迎来到社区!
您的代码正常。运算符 new 将在内存中创建一个对象,并将返回该对象上的指针。
然后node1->next_ptr = node2
将“连接”节点1和节点2。否则,node1.next_ptr将是指向像node2这样的对象的指针。
您应该检查链接列表教程。随便问...