我不能让两个 类 互相指着对方
I can't have two classes pointing at each other
这个代码
class x {
y* ptrY;
};
class y {
x* ptrX;
};
int main() {
}
给我这些无用的错误
我是不是在做一些不允许的事情,或者有办法解决这个问题
定义x
时,y
还不知道,所以x
不能正常编译。解决这个问题的一种方法是使用前向声明——本质上,你会声明“y
是一个 class,我稍后会定义它”:
class y; // Forward declaration of y
class x {
y* ptrY;
};
class y {
x* ptrX;
};
int main() {
}
这个代码
class x {
y* ptrY;
};
class y {
x* ptrX;
};
int main() {
}
给我这些无用的错误
我是不是在做一些不允许的事情,或者有办法解决这个问题
定义x
时,y
还不知道,所以x
不能正常编译。解决这个问题的一种方法是使用前向声明——本质上,你会声明“y
是一个 class,我稍后会定义它”:
class y; // Forward declaration of y
class x {
y* ptrY;
};
class y {
x* ptrX;
};
int main() {
}