215
Tablice
Każdy obiekt, niezależnie czy jest on standardowym typem C++ czy też został stworzony przez użytkownika, może być umieszczony w tablicy. Kiedy deklarujesz tablicę to podajesz typ jej elementów i liczbę tych elementów (czyli rozmiar tablicy). Kompilator, bazując na deklaracji klasy, oblicza ile miejsca musi zarezerwować dla deklarowanej tablicy. Klasa musi posiadać konstruktor domyślny, nie posiadający żadnych parametrów, gdyż jest on niezbędny w momencie definiowania tablicy.
Dostęp do danych w tablicy jest dwustopniowy. Najpierw trzeba określić numer elementu w tablicy za pomocą operatora indeksowego ( [ ] ), a następnie za pomocą operatora kropka (. ) odwołać się do odpowiedniej zmiennej lub funkcji wewnętrznej obiektu. Listing 15.2 pokazuje jak stworzyć tablicę pięciu KOTów.
Listing 15.2. Tworzenie tablicy obiektów
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
// Listing 15.2 - Tablica obiektów
#include <iostream.h>
class KOT {
public:
KOTO f jegoWiek = 1; jegoWaga=5; } // konstruktor domycelny
~KOT() {} // destruktor
int PobierzWiekO const { return jegoWiek; } int PobierzWagaO const { return jegoWaga; } void UstawWiek(int wiek) { jegoWiek = wiek; )
private:
int jegoWiek; int jegoWaga;
int main()
<
KOT Młode[5]; int i;
for (i = 0; i < 5; i++)
Młode[i].UstawWiek(2*i +1);
for (i = 0; i < 5; i++)
cout « "Kotek #" « (i+1) « ": " « '■•Młode[i] .PobierzWiekO « endl; return 0;
1
Kotek #1: 1 Kotek #2: 3 Kotek #3: 5 Kotek #4: 7 Kotek #5: 9
Tablice
215
Każdy obiekt, niezależnie czy jest on standardowym typem C++ czy też został stworzony przez użytkownika, może być umieszczony w tablicy. Kiedy deklarujesz tablicę to podajesz typ jej elementów i liczbę tych elementów (czyli rozmiar tablicy). Kompilator, bazując na deklaracji klasy, oblicza ile miejsca musi zarezerwować dla deklarowanej tablicy. Klasa musi posiadać konstruktor domyślny, nie posiadający żadnych parametrów, gdyż jest on niezbędny w momencie definiowania tablicy.
Dostęp do danych w tablicy jest dwustopniowy. Najpierw trzeba określić numer elementu w tablicy za pomocą operatora indeksowego ( [ ] ), a następnie za pomocą operatora kropka (.) odwołać się do odpowiedniej zmiennej lub funkcji wewnętrznej obiektu. Listing 15.2 pokazuje jak stworzyć tablicę pięciu KOTów.
Listing 15.2. Tworzenie tablicy obiektów
1: // Listing 15.2 - Tablica obiektów
2:
3: ffincłude Ciostream.h>
4:
5: class KOT
6: (
7: public:
8: KOT() { jegoWiek = 1; jegoWaga=5; ) // konstruktor domycelny
9: -KOTO (ł II destruktor
10: int PobierzWiekO const ( return jegoWiek; }
11: int PobierzWagaO const { return jegoWaga; )
12: void UstawWiek(int wiek) { jegoWiek = wiek; )
13:
14: private:
15: int jegoWiek;
16: int jegoWaga;
18:
19: int main{)
21: KOT Młode[5];
23: for (i = 0; i < 5; i++)
24: Młode[i].UstawWiek(2*i +1);
25:
26: for (i = 0; i < 5; i++)
27: cout « "Kotek #" « (i+1) « ": " «
'•Młode [ i) . PobierzWiek () « endl ;
28: return 0;
29: )
EFEKT DZIAŁANIA:
Kotek #1: 1 Kotek #2: 3 Kotek #3: 5 Kotek #4: 7 Kotek #5: 9