class abstr
{
private:
string fname;
string lname;
string job;
public:
abstr() : fname("Brak"), lname("Brak"), job("Brak") {}
abstr(const string & fn, const string & ln, const string & j) : fname(fn), lname(ln), job(j) {}
virtual void ShowAll() const;
virtual void SetAll();
friend ostream & operator<<(ostream & os, const abstr & e); // wyswietla imie i nazwisko
virtual ~abstr() = 0 {}
};
class employee : public abstr
{
public:
employee() : abstr() {}
employee(const string & fn, const string & ln, const string & j) : abstr(fn,ln,j) {}
virtual void ShowAll() const;
virtual void SetAll();
};
class manager : virtual public abstr {
private:
int inchargeof;
protected:
int InChargeOf() const { return inchargeof; }
int & InChargeOf() { return inchargeof; }
public:
manager() : abstr(), inchargeof(0) {}
manager(const string & fn, const string & ln, const string & j, int ico = 0) : abstr(fn, ln, j), inchargeof(ico) {}
manager(const abstr & e, int ico) : abstr(e), inchargeof(ico) {}
manager(const manager & m); //tego
virtual void ShowAll() const;
virtual void SetAll();
};
class fink : virtual public abstr
{
private:
string reportsto;
protected:
const string ReportTo() const { return reportsto; }
string & ReportsTo() { return reportsto; }
public:
fink() : abstr(), reportsto(0) {}
fink(const string & fn, const string & ln, const string & j, const string & rpo) : abstr(fn,ln,j), reportsto(rpo) {}
fink(const abstr & e , const string & rpo) : abstr(e), reportsto(rpo) {}
fink(const fink & e); // tego
virtual void ShowAll() const;
virtual void SetAll();
};
class highfink : public manager, public fink
{
public:
highfink() : abstr(), manager(), fink() {}
highfink(const string & fn, const string & ln, const string & j, const string & rpo, int ico) : abstr(fn,ln,j), manager(fn,ln,j,ico), fink(fn,ln,j,rpo) {}
highfink(const abstr & e, const string & rpo, int ico) : abstr(e), manager(e,ico), fink(e,rpo) {}
highfink(const fink & f, int ico);//tego
highfink(const manager & m, const string & rpo);//tego
highfink(highfink & h); // tego
virtual void ShowAll() const;
virtual void SetAll();
No więc mam problem z utworzeniem konstruktorów, wszystkich tych gdzie jest komentarz "tego"
mam utworzyć gettery ? I potem jak ich użyć do inicjalizacji składowych, w sensie jak mam je zapisać na liście inizjalizacyjnej ?
Dzieki z góry za pomoc :)