Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. class Osoba {
  2. char *nazwisko; // tu jest np. takie coś: "Kaniecki"
  3. int sn; // tu jest rozmiar nazwiska: np. 8
  4. char **imiona; // tu siedzą imiona np.: "Mateusz, Remek, Hubert, Patryk"
  5. int li; // tu siedzi ich liczba np.: 4
  6. int *tab; // tu siedzi rozmiar każdego z imion np.: 7, 5, 6, 6
  7.  
  8. public:
  9. Osoba(int _sn, char *naz, int _li, char *im, int *_tab) { // wszystkie powyższe zmienne przychodzą z zewnątrz
  10. sn = _sn; // odpowiednie przepisanie rozmiarów i stałych typu int
  11. li = _li;
  12. nazwisko = new char[sn]; // alokacja pamięci dla nazwiska: mamy miejsce na 8 charów
  13. for (int i = 0; i < sn; i++)
  14. nazwisko[i] = naz[i]; // przepisanie każdej literki w pętli mojego nazwiska "K a n i e c k i"
  15. tab = new int[li]; // alokacja pamięci na ilość wielkości imion: mamy 4 miejsca typu int
  16. for (int i = 0; i < li; i++)
  17. tab[i] = _tab[i]; // przypisanie wielkości do tablicy: tab = "7, 5, 6, 6"
  18. imiona = new char*[li]; // alokacja "sufladek" dla imion czyli miejsc gdzie będą leżeć moje imiona
  19. for (int i = 0; i < li; i++) {
  20. int size = tab[i]; // tymczasowa zmienna size która pobierze aktualną wielkość imienia np.: 7, potem 5, potem 6 itd...
  21. imiona[i] = new char[size]; // alokacja pamięci - tyle ile potrzeba na dane imię: Mateusz - 8, Remek - 5 itd...
  22. for (int j = 0; j < size; j++)
  23. imiona[i][j] = im[j]; // przypisanie do każdej szufladki o indeksie "i" każdej literki o indeksie j: "M a t e u s z, R e m e k..."
  24. }
  25. }
  26. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement