Advertisement
Guest User

Untitled

a guest
Feb 6th, 2016
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. #include <iostream>
  2. #include <String>
  3. #include <conio.h>
  4. using namespace std;
  5.  
  6. class Medicament
  7. {
  8. private:
  9. string denumire;
  10. float pret;
  11. public:
  12. Medicament()
  13. {
  14. pret = 0.0;
  15. denumire = "fara denumire";
  16. };
  17. Medicament(string den, float p)
  18. {
  19. denumire = den;
  20. pret = p;
  21. };
  22. Medicament(Medicament& m)
  23. {
  24. this->denumire = m.denumire;
  25. this->pret = m.pret;
  26. };
  27. ~Medicament()
  28. {
  29. }
  30. void setDenumire(string den)
  31. {
  32. this->denumire = den;
  33. };
  34. void setPret(float p)
  35. {
  36. this->pret = p;
  37. };
  38. Medicament& operator=(Medicament& m)
  39. {
  40. this->denumire = m.denumire;
  41. this->pret = m.pret;
  42. return *this;
  43. };
  44. friend ostream& operator<<(ostream& out, Medicament& m)
  45. {
  46. out << "Denumire: " << m.denumire<<endl;
  47. out << "Pret: " << m.pret<<endl;
  48. return out;
  49. };
  50. };
  51.  
  52.  
  53. class Reteta
  54. {
  55. private:
  56. Medicament* medicamente;
  57. int n;
  58. public:
  59. Reteta()
  60. {
  61. this->n = 0;
  62. medicamente = NULL;
  63. };
  64. Reteta(Medicament* mP, int nP)
  65. {
  66. this->n = nP;
  67. medicamente = new Medicament[n];
  68. for (int i = 0; i < n;i++)
  69. {
  70. medicamente[i] = mP[i];
  71. }
  72. }
  73. ~Reteta()
  74. {
  75. this->n = 0;
  76. if(this->medicamente!=NULL)
  77. delete[] this->medicamente;
  78. }
  79. friend ostream& operator<<(ostream& out, Reteta r)
  80. {
  81. for (int i = 0; i < r.n; i++)
  82. {
  83. out<<r.medicamente[i];
  84. }
  85. return out;
  86. }
  87. };
  88.  
  89.  
  90.  
  91. int main()
  92. {
  93. //partea 1
  94. Medicament nurofen("Nurofen", 11.25f);
  95. Medicament aspirina = nurofen;
  96. aspirina.setDenumire("Aspirina");
  97. aspirina.setPret(4.5f);
  98. {
  99. Medicament temp;
  100. temp = nurofen;
  101. cout << temp << endl;
  102. }
  103. cout << nurofen << endl;
  104. cout << aspirina << endl;
  105.  
  106.  
  107. //partea 2
  108. Medicament medicamente[] = { aspirina,nurofen };
  109. Reteta r0(medicamente, 2);
  110. cout << r0 << endl;
  111. r0.~Reteta();
  112. _getch();
  113. return 0;
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement