#include <iostream>
#include <string>
using namespace std;
class Pracownik{
protected:
static int licznik;
int id;
string imie;
string nazwisko;
public:
double stawka = 20;
void wpisz_dane();
void wys_wynik();
Pracownik()
{
id;
imie;
nazwisko;
licznik ++;
cout<<"konstruktor domyslny, bezparametrowy"<<endl;
}
Pracownik(const Pracownik &P)
{
imie = P.imie;
nazwisko = P.nazwisko;
cout<<"konstruktor kopiujacy"<<endl;
}
Pracownik(string im, string nz)
{
imie = im;
nazwisko = nz;
cout<<"konstruktor z parametrami"<<endl;
}
virtual ~Pracownik()
{
licznik--;
cout<<"destruktor - licznik: "<<licznik<<endl;
}
};
int Pracownik::licznik = 0; //definicja i zainicjowanie zmiennej statycznej licznik
void Pracownik::wpisz_dane()
{
cout<<"Imie: ";
cin>>imie;
cout<<"Nazwisko: ";
cin>>nazwisko;
cout<<"ID: ";
cin>>id;
}
void Pracownik::wys_wynik()
{
cout<<imie<<" "<<nazwisko<<" Nr ID: "<<id<<endl;
cout<<"| Stawka: "<<stawka<<" | Licznik: "<<licznik<<endl;
}
class Kierownik : public Pracownik
{
public:
double stawkaK()
{
int st;
st = stawka*5;
return(st);
}
};
class Informatyk : public Pracownik
{
public:
double stawkaK()
{
int st;
st = stawka*3.5;
return(st);
}
};
int main()
{
cout<<"__Pracownicy"<<endl;
Pracownik P1; //pracownik domyślny
Pracownik P2("Jan", "Kowalski"); //konstruktor sparametryzowany *2a
Pracownik P3;
P3.wpisz_dane(); //użytkownik podaje sparametryzowanego &2b
P1.wys_wynik();
P3.wys_wynik();
P2.wys_wynik();
cout<<"__Informatycy"<<endl;
Informatyk I1;
Informatyk I2(I1);
I1.wys_wynik();
cout<<"informatyk 1 ^"<<endl;
I2.wys_wynik();
cout<<"Informatyk 2 ^"<<endl;
cout<<"__Kierownik"<<endl;
Kierownik K1;
K1.wpisz_dane();
K1.wys_wynik();
//vector<Pracownik> zespol = {K1, I1, P1}; //to ma byc tablica
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}