初学c++,想综合练习一下结构和类。
我定义了
1:一个Formula类,主要用于保存某种公式;
2:一个Fml_LNode结构,包含Formula对象和Fml_LNode指针,用于将Formula对象存储为单链表形式;
3:一个Fml_LList类,包含上述链表的结点数、头指针和尾指针,以及成员函数add()。如代码所示。
class Formula {
private:
gem src;
gem pro;
public:
Formula(gem sc, gem pr);
~Formula() {};
void show();
};
struct Fml_LNode {
Formula fml;
Fml_LNode *next;
};
class Fml_LList {
private:
int num_of_formulas;
Fml_LNode *L;
Fml_LNode *rear;
public:
void add(Formula & fml);
};
add()方法的功能是接受一个Formula公式对象的引用,尾插法加入到链表中,代码为:
void Fml_LList::add(Formula & newfml) {
num_of_formulas++;
int a;
rear = new Fml_LNode;
rear->fml = newfml;
rear->next = NULL;
rear = rear->next;
}
遇到问题:
在新建链表结点那一行,编译器提示不能”尝试引用已删除的函数“。
我明明是用结构体变量,这和构造函数啥的又有什么关系呢?如果不能则么做,希望能提供一个思路谢谢大家