У меня есть простая задача:Наследование C++ Ребенок Родитель
class Weapon{
public:
int dmg;
float speed;
int rate;
};
class Uzi : public Weapon{
public:
Uzi();
void Shot(float angle);
};
Class Pistol : public Weapon{
public:
Pistol();
void Shot(float angle);
};
Позже в коде, когда я оставляю за собой, например:
Weapon wep;
wep = Uzi;
wep.Shot(15);
Это не работает: неопределенная ссылка на `оружие :: Выстрел (float) '
Могу ли я зарезервировать переменную типа «wep»? Я думаю, нет, потому что оружие меняется (пистолет/узи/...).
Заранее благодарен!
Вы добавили реализацию класса в файл cpp? –
У вас есть, по сути, определение 'Uzi :: Shot'? И вы действительно пытаетесь называть 'Shot()' без параметра? –
@ Карл Я реализовал их. – ewooycom