Przykład klasy std string i std vector

#include <iostream>

#include <string>

#include <vector>

class Pracownik {

std::string imie;

std::string nazwisko;

int lata_pracy;

public:

Pracownik(std::string im="Gal", std::string na="Anonim", int lp=0) {

imie = im;

nazwisko = na;

lata_pracy = lp;

}

int pensja() const {

// podstawa + lata_pracy * dodatek + widzimisi� szefa

return 1000 + lata_pracy * 100 + nazwisko.size();

}

friend std::ostream & operator << (std::ostream & stream, const Pracownik &p);

};

class Firma {

public:

std::string nazwa;

std::vector<Pracownik> pracownicy;

Firma(std::string na="Wszystko i nic") {

nazwa = na;

}

void dodaj_pracownika(Pracownik &p);

friend std::ostream & operator << (std::ostream & stream, const Firma &f);

};

void Firma::dodaj_pracownika(Pracownik &p) {

pracownicy.push_back(p);

}

std::ostream & operator << (std::ostream & stream, const Firma &f) {

stream << "W firmie " + f.nazwa + " pracuj�: \n";

for (unsigned i=0; i<f.pracownicy.size(); i++)

stream << f.pracownicy[i] << std::endl;

return stream;

}

std::ostream & operator << (std::ostream & stream, const Pracownik &p) {

stream << p.nazwisko + ", pensja = " << p.pensja();

return stream;

}

int main() {

Pracownik p1("Jan", "Kowalski", 10);

Pracownik p2("Adam", "Nowak", 1);

Firma f;

f.dodaj_pracownika(p1);

f.dodaj_pracownika(p2);

std::cout << f << std::endl;

return 0;

}


Wyszukiwarka

Podobne podstrony:
Przykład klasy do testu obliczenia
10 Klasy String i Vectorid 10567 ppt
Klasy String metody z przykładami split, length, replace, contains, indexOf, substring StormIT
PRZYKŁADOWE TEKSTY PISANIA Z PAMIĘCI DLA KLASY II
niebakteryjne std
Std
metoda wg MIL STD?2
Blaxter Ghoster Gloamatte Std
KewlPack #1 Chromium Std
niebakteryjne std
IEEE Std 1149 1 JTAG
mil std 1913
[lekcja 7] Przestrzeń nazw std Kurs C++ » Poziom 1
STD, CHOROBY PRZENOSZONE DROGĄ PŁCIOWĄ
Scrapple Std
i wish i have std done VS6CQVLIJBMWQEQMOX6EZTIAP7CAIMUEB3SBEZI
KewlPack #1 Woodenizer Std

więcej podobnych podstron