#include using namespace std; //Implementirati nasljeđivanje između odgovarajućih klasa //Osmisliti osnovne atribute i metode za rad sa klasama class Zaposlenik { protected: char* imePrezime; double iznosPrimanja; char* opisPosla; public: Zaposlenik(char* imePrezime="Nepoznato", double iznosPrimanja = 0,char *opisPosla="Nepoznato") { this->imePrezime=new char [strlen(imePrezime)+1]; strcpy_s(this->imePrezime,strlen(imePrezime)+1,imePrezime); this->iznosPrimanja=iznosPrimanja; this->opisPosla=new char [strlen(opisPosla)+1]; strcpy_s(this->opisPosla,strlen(opisPosla)+1,opisPosla); } virtual ~Zaposlenik() { delete[]imePrezime; delete[]opisPosla; } virtual void info()=0; }; class StalniZaposlenik:public Zaposlenik { char *povlastice; public: StalniZaposlenik(char* imePrezime="Nepoznato", double iznosPrimanja = 0,char *opisPosla="Nepoznato", char *povlastice="Nepoznato"):Zaposlenik(imePrezime,iznosPrimanja, opisPosla) { this->povlastice=new char[strlen(povlastice)+1]; strcpy_s(this->povlastice,strlen(povlastice)+1,povlastice); } ~StalniZaposlenik() { delete povlastice; } void info () { char *crt="\n============================\n"; cout<ugovor=new char[strlen(ugovor)+1]; strcpy_s(this->ugovor,strlen(ugovor)+1,ugovor); } ~PrivremeniZaposlenik() { delete []ugovor; } void info () { char *crt="\n============================\n"; cout<upravljanje=new char[strlen(upravljanje)+1]; strcpy_s(this->upravljanje,strlen(upravljanje)+1,upravljanje); } ~Menadzer() { delete upravljanje; } void info () { char *crt="\n============================\n"; cout<=konsultacije) { char ** temp; *temp=new char[konsultacije+3]; for(int i=0;ibudget=budget; } ~Direktor() {} void info () { char *crt="\n============================\n"; cout<vrsta=new char[strlen(vrsta)+1]; strcpy_s(this->vrsta,strlen(vrsta)+1,vrsta); } ~MenadzerKonsultant() { delete []vrsta; } void info () { char *crt="\n============================\n"; cout<konsultiranje("Test"); pok1->info(); pok2->info(); pok3->info(); pok4->info(); }