Inheritance and Output Formatting





Object Oriented Design Exercise 6

Inheritance and Output Formatting 

1 Inheritance and Output Formatting

Please finish the implementation of class name and derived classes person and employee in the following code. Format the output neatly using setw() and or other setioflags features (Module 13).

#include

#include

using namespace std;

class name {

protected:

char *first, *last;

public:

name() {};

name(char *f, char *l)

{...}

virtual void info(){// formatted display of the information

}

};

class person : public name {

char gender;

int ssn;

public:

person() {};

person(char *f, char *l, char g, int s): gender(g), ssn(s),

name::name(f, l) {}

virtual void info() { // formatted display of the information

name::info();

... }

};

class employee : public person {

protected:

int payroll;

char *position;

public:

employee() {};

employee(char *f, char *l, char g, int s, int p, char *pos) {

...

void info() { // formatted display of the information

...

}

}

};

int main()

{

char fn[20], ln[20], pos[20];

char gen;

int s, pay;

name *worker;

for (int i=0; i<3; i++) {

}

cout << "Input the first name: " <> fn;

cout << "Input the last name: " <> ln;

cout << "Input the gender: " <> gen;

cout << "Input the social security number: " <> s;

cout << "Input the payroll: " <> pay;

cout << "Input the position: " <> pos;

worker = new employee(fn, ln, gen, s, pay, pos);

worker->info();

}

system("pause");

return 0;