Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- using namespace std;
- class osoba
- {
- protected:
- string nazw;
- int l_lat;
- public:
- osoba(string nazw, int l_lat)
- {
- this->nazw = nazw;
- this->l_lat = l_lat;
- }
- osoba() : nazw("Brak"), l_lat(0) {}
- void pokaz()
- {
- cout<<nazw<<"\n";
- cout<<l_lat<<"\n";
- }
- const string& nazwisko()const {return nazw;}
- const int& liczba_lat()const {return l_lat;}
- string& nazwisko(){return nazw;}
- int& liczba_lat(){return l_lat;}
- osoba* operator = (osoba &os)
- {
- this->nazw =os.nazw;
- this->l_lat = os.l_lat;
- }
- };
- class pracownik : public osoba
- {
- protected:
- string p_stanowisko;
- double p_placa;
- public:
- pracownik(string nazw,int l_lat,string p_stanowisko, int p_placa):osoba(nazw,l_lat)
- {
- this->nazw = nazw;
- this->l_lat = l_lat;
- this->p_stanowisko = p_stanowisko;
- this->p_placa=p_placa;
- }
- const string& stanowisko()const {return p_stanowisko;}
- const double& placa()const {return p_placa;}
- string& stanowisko(){return p_stanowisko;}
- double& placa(){return p_placa;}
- void pokaz()
- {
- cout<<nazw<<"\n";
- cout<<l_lat<<"\n";
- cout<<p_stanowisko<<"\n";
- cout<<p_placa<<"\n";
- }
- pracownik* operator = (pracownik &pr)
- {
- this->nazw = pr.nazw;
- this->l_lat =pr.l_lat;
- this->p_stanowisko=pr.p_stanowisko;
- this->p_placa=pr.p_placa;
- }
- };
- int main()
- {
- osoba os("Dolas", 26);
- os.pokaz();
- const pracownik pr1("Dyzma", 35, "mistrz", 1250.0);
- cout << pr1.nazwisko() << pr1.liczba_lat();
- cout << pr1.stanowisko() << pr1.placa();
- pracownik pr2(pr1);
- pr2.pokaz();
- pracownik pr3("Kos", 45, "kierownik", 2260.0);
- pr3.pokaz();
- pr3 = pr2;
- pr3.pokaz();
- osoba* w = &os;
- w->pokaz();
- w = &pr3;
- w->pokaz();
- static_cast<pracownik*>(w)->pokaz();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement