Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- using namespace std;
- class Persoana {
- string *nume = new string;
- string *prenume = new string;
- unsigned int varsta;
- public:
- //constructor vid folosit pentru declararea vectorului
- Persoana() {}
- //constructor pentru initializarea variabilelor
- Persoana(string *nume, string *prenume, unsigned int varsta)
- {
- *this->nume = *nume;
- *this->prenume = *prenume;
- this->varsta = varsta;
- }
- ~Persoana() { cout << nume->c_str() << ' ' << prenume->c_str() << " a fost sters din baza de date\n";
- delete nume, prenume;
- }
- //functie de afisare
- void afisare()
- {
- cout << "-----------------------------\n";
- cout << "Numele: " << nume->c_str() << "\n";
- cout << "Prenume: " << prenume->c_str() << "\n";
- cout << "Varsta: " << varsta << "\n";
- }
- //returnare nume pentru functia de cautare
- string returnareNume()
- {
- return *nume;
- }
- //returnare prenume pentru functia de stergere
- string returnarePrenume()
- {
- return *prenume;
- }
- };
- class Angajat : public Persoana {
- unsigned int salar;
- string *departament = new string;
- public:
- //constructor vid folosit pentru declararea vectorului
- Angajat() {}
- //constructor pentru initializarea variabilelor
- Angajat(string *nume, string *prenume, int varsta, string *departament, unsigned int salar) : Persoana(nume, prenume, varsta)
- {
- *this->departament = *departament;
- this->salar = salar;
- }
- ~Angajat() { delete departament; }
- //functia de afisare
- void afisare()
- {
- Persoana::afisare();
- cout << "Departament: " << departament->c_str() << "\n";
- cout << "Salar: " << salar << " ron";
- }
- };
- class Profesor : public Angajat {
- private:
- string *numefacultate= new string;
- unsigned short nrStud
- ; public:
- Profesor() {}
- Profesor(string nume, string prenume, unsigned int varsta, string departament, unsigned int salar, string numefacultate, unsigned short nrStud) : Angajat(&nume, &prenume, varsta, &departament, salar) {
- *this->numefacultate = numefacultate;
- this->nrStud = nrStud;
- }
- void afisare() {
- Angajat::afisare();
- cout << "\nProfesor la facultatea " << numefacultate->c_str();
- cout << "\nNumar de studenti: " << nrStud << "\n\n";
- }
- };
- class Inginer : public Angajat {
- private:
- string *Domeniu = new string;
- unsigned short vechime;
- public:
- Inginer() {}
- Inginer(string nume, string prenume, unsigned int varsta, string departament, unsigned int salar, string Domeniu, unsigned short vechime) : Angajat(&nume, &prenume, varsta, &departament, salar) {
- *this->Domeniu = Domeniu;
- this->vechime = vechime;
- }
- void afisare() {
- Angajat::afisare();
- cout << "\nInginer la facultatea " << Domeniu->c_str();
- cout << "\nVechime: " << vechime << "\n\n";
- }
- };
- class Student : public Persoana {
- unsigned int anStudiu;
- string *numeFacult = new string;
- public:
- //constructor vid folosit pentru declararea vectorului
- Student() {}
- //constructor pentru initializarea variabilelor
- Student(string *nume, string *prenume, int varsta, string *numeFacult, unsigned int anStudiu) : Persoana(nume, prenume, varsta)
- {
- *this->numeFacult = *numeFacult;
- this->anStudiu = anStudiu;
- }
- ~Student() { delete numeFacult; }
- //functia de afisare
- void afisare()
- {
- Persoana::afisare();
- cout << "profil: " << numeFacult->c_str() << "\n";
- cout << "anUniv: " << anStudiu << " ron";
- }
- };
- class StudentLicenta : public StudentLicenta {
- private:
- string *specializarea = new string;
- unsigned short nrCredite;
- public:
- StudentLicenta() {}
- StudentLicenta(string nume, string prenume, unsigned int varsta, string departament, unsigned int salar, string specializarea, unsigned short nrCredite) : StudentLicenta(&nume, &prenume, varsta, &departament, salar) {
- *this->specializarea = specializarea;
- this->nrCredite = nrCredite;
- }
- void afisare() {
- StudentLicenta::afisare();
- cout << "\nSSpecializarea " << specializarea->c_str();
- cout << "\nNumar de credite: " << nrCredite << "\n\n";
- }
- };
- int main()
- {
- Profesor *popescu = new Profesor("popescu", "ion ", 29,"economic", 2000, "upt", 287);
- popescu->afisare();
- delete popescu;
- Inginer *alex = new Inginer("Drula", "Alex", 24, "Repare,", 5000, "C++", 5);
- alex->afisare();
- delete alex;
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement