Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <String>
- #include <conio.h>
- using namespace std;
- class Medicament
- {
- private:
- string denumire;
- float pret;
- public:
- Medicament()
- {
- pret = 0.0;
- denumire = "fara denumire";
- };
- Medicament(string den, float p)
- {
- denumire = den;
- pret = p;
- };
- Medicament(Medicament& m)
- {
- this->denumire = m.denumire;
- this->pret = m.pret;
- };
- ~Medicament()
- {
- }
- void setDenumire(string den)
- {
- this->denumire = den;
- };
- void setPret(float p)
- {
- this->pret = p;
- };
- Medicament& operator=(Medicament& m)
- {
- this->denumire = m.denumire;
- this->pret = m.pret;
- return *this;
- };
- friend ostream& operator<<(ostream& out, Medicament& m)
- {
- out << "Denumire: " << m.denumire<<endl;
- out << "Pret: " << m.pret<<endl;
- return out;
- };
- };
- class Reteta
- {
- private:
- Medicament* medicamente;
- int n;
- public:
- Reteta()
- {
- this->n = 0;
- medicamente = NULL;
- };
- Reteta(Medicament* mP, int nP)
- {
- this->n = nP;
- medicamente = new Medicament[n];
- for (int i = 0; i < n;i++)
- {
- medicamente[i] = mP[i];
- }
- }
- ~Reteta()
- {
- this->n = 0;
- if(this->medicamente!=NULL)
- delete[] this->medicamente;
- }
- friend ostream& operator<<(ostream& out, Reteta r)
- {
- for (int i = 0; i < r.n; i++)
- {
- out<<r.medicamente[i];
- }
- return out;
- }
- };
- int main()
- {
- //partea 1
- Medicament nurofen("Nurofen", 11.25f);
- Medicament aspirina = nurofen;
- aspirina.setDenumire("Aspirina");
- aspirina.setPret(4.5f);
- {
- Medicament temp;
- temp = nurofen;
- cout << temp << endl;
- }
- cout << nurofen << endl;
- cout << aspirina << endl;
- //partea 2
- Medicament medicamente[] = { aspirina,nurofen };
- Reteta r0(medicamente, 2);
- cout << r0 << endl;
- r0.~Reteta();
- _getch();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement