将对象嵌入到链表c ++中

时间:2014-07-10 05:31:35

标签: c++ object linked-list

我正在尝试将对象添加到链接列表中。我的计划的想法是建立一个学生信息系统。在这个学生信息系统中,当有一个新的学生条目时,将创建该类的新对象,该对象将是链接列表中新节点的信息。换句话说,该对象将是链表的节点的信息字段。我试过这个程序但是出错了。

#include<iostream.h>
class result
{
    int age;
    char name[30];
    float marks;

public:
    void ret(int a, float m)
    {
        age = a;
        marks = m;

    }
};

struct node
{
    result info;
    struct node *next;
};


void main()
{
    struct node *h, *t;
    int g;
    float ma;
    cout<<"Enter age , name , marks\n";
    cin>>g;
    cin>>ma;
    result ob;
    h = NULL;
    t = new node;
    t->info = ob.ret(g,ma);
    t->next = NULL;
    h = t;
    cout<<t->info;
}

错误是:

1)不是允许的类型 2)非法结构运作

1 个答案:

答案 0 :(得分:0)

retresult的成员,返回void。我猜你的意思是创建一个result的构造函数,它带有两个参数。所以,这就是你要做的事情

class result
{
 int age;
 char name[30];
 float marks;

 public:
 result(){}
 result(int a, float m)
 {
  age = a;
  marks = m;

 }
};

t->info = ob.ret(g,ma);更改为t->info = result(g, ma);