class A;//提前声明A类
class B
{
A* a;//必须为A类的指针
};
class A
{
B b;
};
这样定义即可。
gcc中,在引用某个已经实现的类时:如果只是定义某个类的指针,可以使用class关键字先进行声明,而不需包含头文件;但如果涉及到定义某个类的对象或是引用类的某个具体成员时,则必须包含该类的头文件,并且不要加class关键字进行声明。否则,将会出现标题所示编译错误!
class A;//提前声明A类
class B
{
A* a;//必须为A类的指针
};
class A
{
B b;
};
这样定义即可。
gcc中,在引用某个已经实现的类时:如果只是定义某个类的指针,可以使用class关键字先进行声明,而不需包含头文件;但如果涉及到定义某个类的对象或是引用类的某个具体成员时,则必须包含该类的头文件,并且不要加class关键字进行声明。否则,将会出现标题所示编译错误!