我正在嘗試創建一個簡單的基類和從其繼承的另一個類。我收到以下錯誤。錯誤:在帶有模板的'{'令牌之前預期的類名稱
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
我也是在我需要把徹底糊塗包括我的繼承類中的基本類。感謝您的幫助。
感謝您的幫助。模板繼承的特定語法是我以前沒有處理過的。 – 2012-04-22 07:27:34
我已經編輯了帖子 - 在線程中的其他答案(賈斯汀和本),以指出初始化列表中的錯誤。 – 2012-04-22 07:42:54