我正在开发一款 Asteroids 游戏,以此来自学一些编程知识,但我遇到了一个错误,即我的一个班级没有命名类型。
我有一个从 Entity 类继承的 SpaceShip 类(两者都已定义),我有一个从 Entity 继承的 Bullet 类。我试图将 SpaceShip 成员放入 Bullet 类,以此来告诉谁射了子弹,但它一直告诉我“'SpaceShip' 没有命名类型”。
这是一些代码:
宇宙飞船.h
class SpaceShip : public Entity
{
private:
int lives;
int score;
int animationRow;
int shotsFired;
public:
SpaceShip();
void Init(SDL_Surface *image = NULL);
void Destroy();
void Update();
void Render( SDL_Surface *screen );
...
};
子弹头文件
#ifndef BULLET_H
#define BULLET_H
#include <SDL/SDL_gfxPrimitives.h>
#include "entity.h"
#include "spaceship.h"
#include "Globals.h"
class Bullet : public Entity
{
private:
SpaceShip* owner;
public:
Bullet( SpaceShip* ship );
void Update();
void Render( SDL_Surface *screen );
void Destroy();
void Collided(int objectID);
};
#endif // BULLET_H
为什么找不到 SpaceShip 类型?