Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Pracownik* generator_klas(string text)
- {
- int rok, staz;
- istringstream iss(text);
- vector<string> results((istream_iterator<string>(iss)),
- istream_iterator<string>());
- size_t const half_size = 5;
- vector<string> split_lo(results.begin(), results.begin() + half_size);
- vector<string> split_hi;
- split_hi.push_back("");
- Pracownik *pracownik;
- if (split_lo[0] == "P:")
- {
- rok = atoi(split_lo[3].c_str());
- staz = atoi(split_lo[4].c_str());
- pracownik = new Programista(split_lo[1], split_lo[2], rok, staz, split_hi);
- //pracownik ->wyswietl();
- }
- else if (split_lo[0] == "K:")
- {
- rok = atoi(split_lo[3].c_str());
- staz = atoi(split_lo[4].c_str());
- pracownik = new Kierownik(split_lo[1], split_lo[2], rok, staz, split_hi);
- //pracownik ->wyswietl();
- }
- else if (split_lo[0] == "H:")
- {
- rok = atoi(split_lo[3].c_str());
- staz = atoi(split_lo[4].c_str());
- pracownik = new Handlowiec(split_lo[1], split_lo[2], rok, staz, split_hi);
- //pracownik ->wyswietl();
- }
- else
- {
- cout << "BLAD: nieznany typ rekordu! - linia: " << text;
- }
- return pracownik;
- }
- *pracownicy zaladuj_dane(string nazwa_pliku)
- {
- vector<Pracownik*> pracownicy;
- fstream plik;
- string linia;
- plik.open(nazwa_pliku.c_str());
- if(plik.good()==false)
- {
- cout << "BLAD: nieznaleziono danych!";
- exit(0);
- }
- while(!plik.eof())
- {
- getline(plik, linia);
- pracownicy.push_back(generator_klas(linia));
- }
- return pracownicy;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement