1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- // worker0.cpp -- working class methods
- #include "worker0.h"
- #include <iostream>
- using std::cout;
- using std::cin;
- using std::endl;
- // Worker methods
- // must implement virtual destructor, even if pure
- Worker::~Worker() {}
- void Worker::Set()
- {
- cout << "Enter worker's name: ";
- getline(cin, fullname);
- cout << "Enter worker's ID: ";
- cin >> id;
- while (cin.get() != '\n')
- continue;
- }
- void Worker::Show() const
- {
- cout << "Name: " << fullname << "\n";
- cout << "Employee ID: " << id << "\n";
- }
- // Waiter methods
- void Waiter::Set()
- {
- Worker::Set();
- cout << "Enter waiter's panache rating: ";
- cin >> panache;
- while (cin.get() != '\n')
- continue;
- }
- void Waiter::Show() const
- {
- cout << "Category: waiter\n";
- Worker::Show();
- cout << "Panache rating: " << panache << "\n";
- }
- // Singer methods
- char * Singer::pv[] = {"other", "alto", "contralto",
- "soprano", "bass", "baritone", "tenor"};
- void Singer::Set()
- {
- Worker::Set();
- cout << "Enter number for singer's vocal range:\n";
- int i;
- for (i = 0; i < Vtypes; i++)
- {
- cout << i << ": " << pv[i] << " ";
- if ( i % 4 == 3)
- cout << endl;
- }
- if (i % 4 != 0)
- cout << endl;
- while (cin >> voice && (voice < 0 || voice >= Vtypes) )
- cout << "Please enter a value >= 0 and < " << Vtypes << endl;
- while (cin.get() != '\n')
- continue;
- }
- void Singer::Show() const
- {
- cout << "Category: singer\n";
- Worker::Show();
- cout << "Vocal range: " << pv[voice] << endl;
- }
|