我是初学者,很难理解如何动态分配一个对象,然后将另一个动态分配对象的内存地址传递给第一个对象的成员。
给定一个结构,其中包含一个整数和一个指向另一个相同类型结构的指针,如下所示:
struct Node {
int data;
Node *next_ptr;
};
会:
Node *node1 = new Node();
Node *node2 = new Node();
为 Node
类型的对象分配内存还是只创建指向对象 node1
的指针?
node1->next_ptr = node2
能否成为解决方案?
最佳答案
您好,欢迎来到社区!
您的代码没问题。运算符 new 将在内存中创建一个对象,并返回该对象的指针。
而node1->next_ptr = node2
将“连接”node1和node2。或者 node1.next_ptr 将指向像 node2 这样的对象。
您应该检查链表教程。随意问...
关于c++ - 关于动态分配对象的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54610690/