Sunteți pe pagina 1din 2

#include <iostream>

#include <string>

using namespace std;

//clasa de baza
class Persoana
{
string nume, prenume;
public:
Persoana(){}
Persoana(string a, string b):nume(a),prenume(b){}
string get_nume(){return nume;}
string get_prenume(){return prenume;}
};

//o clasa derivata


class Student: public Persoana
{
string grupa, nr_matricol;
public:
Student(){}
Student(string a, string b, string c, string d):Persoana(a,b)
{
grupa=c;
nr_matricol=d;
}
string get_grupa(){return grupa;}
string get_nr_matricol(){return nr_matricol;}
};

//o alta clasa derivata


class Angajat: public Persoana
{
string departament, nr_matricol;
public:
Angajat(){}
Angajat(string a, string b, string c, string d):Persoana(a,b)
{
departament=c;
nr_matricol=d;
}
string get_departament(){return departament;}
string get_nr_matricol(){return nr_matricol;}
};

int main()
{
//declar doi pointeri la obiecte din clasa persoana
Persoana *p1, *p2;
//declar si initializez un pointer la un obiect din clasa student
Student *s=new Student("Ionescu","Marcel","50901","12345");
//declar si initializez un pointer la un obiect din clasa angajat
Angajat *a=new Angajat("Popescu","Marcelina","Contabilitate","67890");
//demonstratie de polimorfism
//folosesc obiectul din clasa student ca si obiect din clasa persoana
p1=s;
//alta demonstratie de polimorfism
//folosesc obiectul din clasa angajat ca si obiect din clasa persoana
p2=a;
cout<<"Numele ob. din clasa student folosit ca si ob. din clasa persoana:
"<<p1->get_nume()<<endl;
cout<<"Prenumele ob. din clasa student folosit ca si ob. din clasa persoana:
"<<p1->get_prenume()<<endl;
cout<<"Numele ob. din clasa angajat folosit ca si ob. din clasa persoana:
"<<p2->get_nume()<<endl;
cout<<"Prenumele ob. din clasa angajat folosit ca si ob. din clasa persoana:
"<<p2->get_prenume()<<endl;
return 0;
}

Cand de ochii tai adanci mi-e dor in noapte


Chem o raza din lumina lor de vis
In stele vin spre tine cand ma-ndeamna-n soapte
http://Versuri.ro/w/htl2
Si'-s flamand de al iubirii paradis

ca fiinta diafana, ma simt lezata launtric de aceste cuvinte exhaustiv de


insultatoare

S-ar putea să vă placă și