【问题标题】:Accessing pointers using objects使用对象访问指针
【发布时间】:2014-08-17 16:14:07
【问题描述】:

我正在编写一个程序,我打算在其中创建三个不同的单链表,但它们都为链表的节点共享相同的 ADT。

    class node
    {
     int data;
     node* next;
     }*start;

所以我的查询是如果我想访问第一个链表的起始指针指向的数据,我该怎么做?如果我创建对应于三个不同链表的类节点的 3 个对象(obj1,obj2,obj3),那么语句会

    obj1.start->data 

是访问第一个链表的起始指针指向的节点中数据的有效方式

【问题讨论】:

    标签: c++ pointers object linked-list


    【解决方案1】:

    在类 XYZ 中有一个结构节点,如下所示:

    class XYZ {
      struct node {
        int data;
        node *next;
      }*start;
    }
    

    然后对于3个不同的具有相同节点结构的链表,创建3个XYZ类型的对象obj1、obj2和obj3。 然后使用以下方式访问数据:

    obj1.start->data
    obj2.start->data
    

    等等。

    obj1.element 引用对象 'obj1' 的名为 'element' 的变量。起始节点是类中名为 XYZ 的变量,因此您可以通过创建该类 XYZ 的对象来引用它,并编写 obj1.start

    您的代码不起作用,因为在其中,start 是一个类型节点的指针,但我们想要的是在类中的指针 obj1.start 工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      • 2013-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多