Итак, я сейчас работаю над текстовой RPG и столкнулся со странной проблемой.Работая над кодированием оружия, я решил использовать перечисления для типа и редкости оружия.Я уже запрограммировал все для моего Weapon
класса;тем не менее, когда я пытаюсь создать объект Weapon
, я получаю сообщение об ошибке, касающееся моих перечислений - error: 'common' is not a type
.Соответствующий код выглядит следующим образом:
В Enum_Weapon.h
:
#ifndef ENUM_WEAPON_H_INCLUDED
#define ENUM_WEAPON_H_INCLUDED
enum rarity{common, uncommon, rare, epic, legendary};
enum weaponType{axe, bow, crossbow, dagger, gun, mace,
polearm, stave, sword, wand, thrown};
#endif // ENUM_WEAPON_H_INCLUDED
И в Weapon.h
:
#ifndef WEAPON_H
#define WEAPON_H
#include "Item.h"
#include "Enum_Weapon.h"
class Weapon : public Item{
public:
Weapon();
Weapon(rarity r, weaponType t, std::string nam, int minDam,
int maxDam, int stamina = 0, int strength = 0,
int agility = 0, int intellect = 0);
Код, конечно, продолжается;но это весь код, который имеет отношение к моей ошибке.Наконец, когда я пытаюсь создать объект Weapon
, я получаю сообщение об ошибке:
#ifndef LISTOFWEAPONS_H
#define LISTOFWEAPONS_H
#include "Weapon.h"
#include "Enum_Weapon.h"
class ListOfWeapons
{
public:
ListOfWeapons();
protected:
private:
Weapon worn_greatsword(common, sword, "Worn Greatsword", 1, 2);
};
#endif // LISTOFWEAPONS_H
Та же ошибка также происходит с перечислением sword
.Я исследовал проблему, но не могу найти ничего похожего на проблему, которая у меня возникла.Любая помощь очень ценится!