Программы на C++. Форум разработчиков
-
Anonymous
Виртуальная функция С++ не переопределяет
Сообщение
Anonymous »
Код: Выделить всё
#include
using namespace std;
class character {
private:
public:
character(string n, int h, int a){
}
virtual int getHealth() = 0;
virtual int getAttack() = 0;
virtual string getName() = 0;
virtual void updateHealth() = 0;
virtual void updateAttack(int a) = 0;
virtual void attackCharacter(character &b) = 0;
virtual void print() = 0;
};
class entity : public character {
private:
string name;
int health;
int attack;
public:
entity(string n, int h, int a) : character(n, h, a) {
n = name; h = health; a = attack;
}
void updateAttack(int a) override { attack = a; }
void attackCharacter(character &b) override { b.updateHealth(); b.getHealth(); }
int getHealth() override { return health; }
string getName() override { return name; }
virtual void print() override {cout
Подробнее здесь: [url]https://stackoverflow.com/questions/78332294/c-virtual-function-not-overriding[/url]
1713247040
Anonymous
[code]#include
using namespace std;
class character {
private:
public:
character(string n, int h, int a){
}
virtual int getHealth() = 0;
virtual int getAttack() = 0;
virtual string getName() = 0;
virtual void updateHealth() = 0;
virtual void updateAttack(int a) = 0;
virtual void attackCharacter(character &b) = 0;
virtual void print() = 0;
};
class entity : public character {
private:
string name;
int health;
int attack;
public:
entity(string n, int h, int a) : character(n, h, a) {
n = name; h = health; a = attack;
}
void updateAttack(int a) override { attack = a; }
void attackCharacter(character &b) override { b.updateHealth(); b.getHealth(); }
int getHealth() override { return health; }
string getName() override { return name; }
virtual void print() override {cout
Подробнее здесь: [url]https://stackoverflow.com/questions/78332294/c-virtual-function-not-overriding[/url]