Статья: Производные Классы
// ...
void print();
};
void manager::print()
{
employee::print();
cout << "\tуровень" << level << "\n";
// ...
}
Функция print_employee() теперь не нужна, поскольку ее место заняли функции члены print(), и теперь со списком служащих можно работать так:
void f(employee* ll)
{
for (; ll; ll=ll->next) ll->print();
}
Каждый служащий будет печататься в соответствии с его типом. Например:
main()
{
employee e;
e.name = "Дж.Браун";
e.department = 1234;
e.next = 0;
manager m;
m.name = "Дж.Смит";
e.department = 1234;
m.level = 2;
m.next = &e;
f(&m);
}
выдаст