Witam. po oglądnięciu 5 oraz 6 odcinka kursu obbject C++ przygotowanego przez Pana Mirosława, chciałem poćwiczyć obie te rzeczy i połączyć w jednym programie by sprawdzić, czy dobrze zrozumiałem tematyke.
z klasy elf chciałem zaporzyczyc wszystkie elementy skladowe do dziedziczącej klasy rycerz, cos jednak nie gra. Z góry dziekuje za pomoc !
#include <iostream>
using namespace std;
class postac
{
public:
virtual void atakuj()=0;
virtual void bron()=0;
};
class elf :public postac
{
protected:
int obrona;
int atak;
public:
virtual void atakuj()
{
cout<<"Elf bije z sila rowna: "<<atak;
}
virtual void bron()
{
cout<<"Elf broni sie z sila rowna: "<<obrona;
}
elf(int ata=12,int ob=5)
{
atak=ata;
obrona=ob;
}
};
class rycerz :public elf,postac
{
public:
rycerz(int ata=4,int ob=10)
{
atak=ata;
obrona=ob;
}
};
void pokaz_atak(postac *wsk)
{
wsk->atakuj();
}
void pokaz_obrone(postac *wsk)
{
wsk->bron();
}
int main()
{
elf e;
rycerz r;
postac *wskaznik;
wskaznik=&e;
pokaz_obrone(wskaznik);cout<<endl;
pokaz_atak(wskaznik);
wskaznik=&r;
pokaz_obrone(wskaznik);cout<<endl;
pokaz_atak(wskaznik);
}