早教吧 育儿知识 作业答案 考试题库 百科 知识分享

RT..写了一段程序,编译时候各种报错,大致是使用了未定义类型如果要定义三个类,每个类中要包含另两个类,这样应该如果定义呢?比如classa{classb;classc;};classb{classa;classc;};classc{classa;classb;

题目详情
RT..
写了一段程序,编译时候各种报错,大致是使用了未定义类型
如果要定义三个类,每个类中要包含另两个类,这样应该如果定义呢?
比如
class a
{
class b;
class c;
};
class b
{
class a;
class c;
};
class c
{
class a;
class b;
};
▼优质解答
答案和解析
//预声明类型
class a;
class b;
class c;
//定义类型(成员改为指针)
class a
{
class* b;
class* c;
};
class b
{
class* a;
class* c;
};
class c
{
class* a;
class* b;
};
在类型定义前不能定义该类型变量.
只能对类型作预声明,然后可以定义该类型指针.当然,在使用前需要new新实例赋给指针.