我正在尝试创建一个简单的基类和另一个继承自它的类。我收到以下错误。
guard_room.h:17:1: error: expected class-name before ‘{’ token
我查看了其他帖子,似乎我在某个地方有循环依赖,但我已经做了我读过的所有事情来解决它。这是我的课
基类 room.h:
#ifndef _room
#define _room
template <typename U, typename T>
class room
{
public:
//default constructor
room();
//overloaded constructor
room(U, T);
//getters/setters
void set_treasure(T);
void set_name(U);
T get_treasure() const;
U get_name() const;
private:
U name;
//room monster
//monster room_monster
T treasure;
};
#include "room.tem"
#endif
继承类guard_room.h:
#ifndef _guard_room
#define _guard_room
template <typename U, typename T> class room;
template <typename U, typename T>
class guard_room : public room
{
public:
//default constructor
guard_room();
//overloaded constructor
guard_room(U, T, T) : room(U, T);
//battle function?
void battle();
private:
T dummy;
};
#include "guard_room.tem"
#endif
我也非常困惑,我需要将基本房间类的包含放在我的继承类中。感谢您对此的帮助。