我的老师让我做一个期末作业。我需要用 C++ 列出一些东西(不能使用 boost、STL 等)。我的 Stuff 类必须在 List 类之后定义。我试过的小样本:
#include <cstdlib>
#include <iostream>
#include <string>
using namespace std;
class Stuff;
class List
{
private :
Stuff *s;
int n;
public :
List(int n)
{
this->n = n;
s = new Stuff[n];
}
~List()
{
delete[] s;
s = NULL;
n = 0;
}
};
class Stuff
{
private :
string name;
double price;
public :
Stuff(){}
};
int main(int argc, char **argv)
{
return 0;
}
我知道:
“如果被删除的对象在删除点具有不完整的类类型,并且完整的类具有非平凡的析构函数或释放函数,则行为未定义。”
但那我该怎么做呢?有任何想法吗?请记住,我不能使用 boost、STL 等。而且必须在 List 类之后定义 Stuff 类。我只是不知道...