Advertisement
Guest User

Untitled

a guest
Mar 29th, 2020
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.34 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5.  
  6. class Zivotinja
  7. {
  8. char* _ime;
  9. char* _vrsta;
  10.  
  11. public:
  12. Zivotinja()
  13. {
  14. _ime = new char[20];
  15. _vrsta = new char[20];
  16. strcpy_s(_vrsta, 20, "baby Jaguar");
  17. strcpy_s(_ime, 20, "bambus");
  18.  
  19. }
  20. Zivotinja(const char* vrsta,const char* ime)
  21. {
  22.  
  23. int vel = strlen(ime) + 1;
  24. _ime = new char[vel];
  25. strcpy_s(_ime, vel, ime);
  26. int novi = strlen(vrsta) + 1;
  27. _vrsta = new char[novi];
  28. strcpy_s(_vrsta, novi, vrsta);
  29.  
  30.  
  31.  
  32. }
  33. Zivotinja(Zivotinja& orginal)
  34. {
  35. _ime = orginal._ime;
  36. _vrsta = orginal._vrsta;
  37. }
  38. Zivotinja& operator=(const Zivotinja& prva)
  39. {
  40. _ime = prva._ime;
  41. _vrsta = prva._vrsta;
  42. return *this;
  43. }
  44.  
  45. ~Zivotinja()
  46. {
  47. delete[] _ime;
  48. _ime = nullptr;
  49. delete[] _vrsta;
  50. _vrsta = nullptr;
  51. }
  52. void setVrsta(char* vrsta)
  53. {
  54. _vrsta = new char[strlen(vrsta) + 1];
  55. int vel = strlen(vrsta) + 1;
  56. strcpy_s(_vrsta, vel, vrsta);
  57. }
  58. void setIme(char* ime)
  59. {
  60. int vel = strlen(ime) + 1;
  61. strcpy_s(_ime, vel, ime);
  62. }
  63. char* getVrsta()
  64. {
  65. return _vrsta;
  66. }
  67. char* getIme()
  68. {
  69. return _ime;
  70. }
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78. };
  79. class eDnevnik
  80. {
  81. public:
  82. Zivotinja stado[20];
  83. int brojac = 0;
  84. void dodaj(Zivotinja& nesto)
  85. {
  86. stado[brojac++] = nesto;
  87. }
  88.  
  89. };
  90.  
  91.  
  92.  
  93. void dodajZivotinju(eDnevnik& app)
  94. {
  95.  
  96. char* ime=new char[50];
  97. char vrsta[50];
  98. cin.ignore();
  99. cout << "Unesite vrstu i ime zivotinje: ";
  100. cin.getline(vrsta, 50);
  101. //z.setVrsta(vrsta);
  102. cin.getline(ime, 50);
  103. cout << vrsta << " " << ime << endl;
  104. Zivotinja z(vrsta, ime);
  105. Zivotinja& p = z;
  106.  
  107.  
  108. //z.setIme(ime);
  109. cout << z.getVrsta() << " " << z.getIme() << endl;
  110. app.dodaj(p);
  111. //stado[brojac++] = p;
  112. delete[] ime;
  113.  
  114. //cout << "Brojac: " << brojac << endl;
  115. //cout << stado[0].getVrsta() << stado[0].getIme() << endl;
  116. //delete[] vrsta;
  117.  
  118.  
  119.  
  120. }
  121.  
  122. void prikaziZivotinje(eDnevnik& neki)
  123. {
  124.  
  125. for (int i = 0; i < neki.brojac; i++)
  126. {
  127.  
  128. cout << neki.stado[i].getVrsta() << "|" << neki.stado[i].getIme() << endl;
  129. }
  130. }
  131.  
  132. int main()
  133. {
  134. eDnevnik app;
  135. int unos;
  136. do
  137. {
  138. cout << "Ako unosite zivotinju pritisnite 1, ako prikazujete 2, 0 ako izlazite" << endl;
  139. cin >> unos;
  140. if (unos == 1) dodajZivotinju(app);
  141. if (unos == 2) prikaziZivotinje(app);
  142. system("pause");
  143.  
  144. system("cls");
  145. } while (unos != 0);
  146.  
  147.  
  148. return 0;
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement