E0291 для класса "Character" не существует конструктор по умолчанию , Как мне сделать так, чтобы HP было одно у OrcWarrion

class Character {
public:
    Character(int HP) {
        cout << "Constructor Character" << endl;
        this->HP = HP;
    }
    int HP;
};

class Orc : public virtual Character {
public:
    Orc(int HP) : Character(HP){
        cout << "Constructor Orc" << endl;
    }
};

class Warrion : public virtual Character {
public:
    Warrion(int HP) : Character(HP) {
        cout << "Constructor Warrion" << endl;
    }
};

class OrcWarrion : public Orc, public Warrion {
public:
    OrcWarrion(int HP) : Orc(HP), Warrion(HP) {
        cout << "Constructor Warrion" << endl;
    }
};

Ответы (1 шт):

Автор решения: Harry

Добавьте вызов конструктора Character:

class OrcWarrion : public Orc, public Warrion {
public:
    OrcWarrion(int HP) : Character(HP), Orc(HP), Warrion(HP) {
        cout << "Constructor Warrion" << endl;
    }
};
→ Ссылка