Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <list>
- using namespace std;
- class person{
- public:
- virtual void show() = 0;
- virtual void add() = 0;
- list <string> a;
- list <string> :: iterator i;
- void s(){
- for(i = a.begin(); i!=a.end();i++){
- cout << (*i) << endl;
- }
- }
- };
- class employee : public person{
- protected:
- void add() override{
- a.push_back("Служащий");
- }
- void show() override{
- for(i = a.begin(); i!=a.end();i++){
- cout << (*i) << endl;
- }
- }
- };
- class worker : public person{
- protected:
- void add() override{
- a.push_back("Рабочий");
- }
- void show() override{
- for(i = a.begin(); i!=a.end();i++){
- cout << (*i) << endl;
- }
- }
- };
- class engeneer : public person{
- protected:
- void add() override{
- a.push_back("Инженер");
- }
- void show() override{
- for(i = a.begin(); i!=a.end();i++){
- cout << (*i) << endl;
- }
- }
- };
- class person1{
- public:
- void show(person *p){
- p->show();
- }
- void add(person *ad){
- ad->add();
- }
- };
- int main() {
- employee e;
- worker w;
- engeneer en;
- person1 per;
- per.add(&e);
- per.show(&e);
- per.add(&w);
- per.show(&w);
- per.add(&en);
- per.show(&en);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement