任何人都可以帮助我吗? 我想创建两个需要彼此的类,如:
class CBullet{
public:
bool DetectCollision(CEnemy enemy){
//some code here
}
};
和
class CEnemy{
public:
CBullet *shootedBullet;
};
这会造成错误。我知道这个错误的原因是因为CBullet
类想要使用尚未创建的CEnemy
类。所以,我尝试在CEnemy
类之前创建CBullet
类的原型,如:
class CEnemy;
class CBullet{
...
但它会创建另一个错误enemy
的类型不完整。
我做了一个错误的原型课吗?
答案 0 :(得分:0)
以另一种方式执行,因为在您的示例中,CBullet需要CEnemy定义(请注意,如果Cenemy通过指针/引用传递给DetectCollision,则不会这样做):
#include "CEnemy.h"
class CBullet{
public:
bool DetectCollision(CEnemy enemy){
//some code here
}
};
and
class CBullet;
class CEnemy{
public:
CBullet *shootedBullet;
};