Poznaj C++ w$ godziny0105

Poznaj C++ w$ godziny0105



Proste klasy 91

Linia 58 zawiera definicję obiektu Frisky (będącego klasy Kot). Do konstruktora obiektu przekazywana jest wartość 5. Jak widać, nie musimy wywoływać funkcji UstawWiek(), ponieważ Frisky został stworzony od razu ze zmienną jegoWiek ustawioną na wartość 5 (widać to w linii 61). W linii 63 zmiennej jegoWiek nadawana jest wartość 7. Linia 65 wypisuje nową wartość zmiennej wewnętrznej.

Podsumowanie

W ciągu tej godziny nauczyłeś się, jak tworzyć nowe typy danych, a mianowicie klasy. Wiesz już jak zdefiniować zmienne nowego typu - obiekty.

Każda klasa posiada swoje elementy wewnętrzne, które, pod względem typów, mogą być bardzo różnorodne (mogąnp. być obiektami). Klasa może zawierać funkcje wewnętrzne - metody. Dzięki tym funkcjom możemy manipulować wartościami zmiennych wewnętrznych danej klasy.

Elementy klasy mogą być publiczne albo prywatne. Elementy publiczne są widoczne w każdym miejscu programu. Elementy prywatne są dostępne tylko z funkcji wewnętrznych danej klasy.

Pytania i odpowiedzi

P: Jak duży jest obiekt danej klasy?

O: Rozmiar obiektu zależy od sumy rozmiarów zmiennych wewnętrznych danej klasy. Metody nie zajmują miejsca, stanowią część pamięci przeznaczonej do funkcjonowania obiektu.

Niektóre kompilatory stosują specyficzny sposób przechowywania zmiennych. W takim przypadku zmienne dwubajtowe mogą faktycznie zajmować więcej miejsca niż dwa bajty. Możesz sprawdzić w dokumentacji od swojego kompilatora, jak to jest zorganizowane u Ciebie. W tym miejscu nie będziemy się wdawać w szczegóły.

P: Dlaczego nie powinienem wszystkich elementów klasy deklarować jako publicznych?

O: Elementy prywatne zwalniają użytkownika klasy z zastanawiania się, jak dane są przechowywane. Przykładowo klasa Kot posiada metodę PobierzWiek (). Użytkownik klasy Kot może wykorzystać tę funkcję i nie musi wiedzieć, czy wiek jest przechowywany w zmiennej, czy jest wyliczany na bieżąco.

Linia 58 zawiera definicję obiektu Frislcy (będącego klasy Kot). Do konstruktora obiektu przekazywana jest wartość 5. Jak widać, nie musimy wywoływać funkcji UstawWiek (), ponieważ Frisky został stworzony od razu ze zmienną jegoWiek ustawioną na wartość 5 (widać to w linii 61). W linii 63 zmiennej jegoWiek nadawana jest wartość 7. Linia 65 wypisuje nową wartość zmiennej wewnętrznej.

Podsumowanie

W ciągu tej godziny nauczyłeś się, jak tworzyć nowe typy danych, a mianowicie klasy. Wiesz już jak zdefiniować zmienne nowego typu — obiekty.

Każda klasa posiada swoje elementy wewnętrzne, które, pod względem typów, mogą być bardzo różnorodne (mogą np. być obiektami). Klasa może zawierać funkcje wewnętrzne - metody. Dzięki tym funkcjom możemy manipulować wartościami zmiennych wewnętrznych danej klasy.

Elementy klasy mogą być publiczne albo prywatne. Elementy publiczne są widoczne w każdym miejscu programu. Elementy prywatne są dostępne tylko z funkcji wewnętrznych danej klasy.

Pytania i odpowiedzi

P: Jak duży jest obiekt danej klasy?

O: Rozmiar obiektu zależy od sumy rozmiarów zmiennych wewnętrznych danej klasy. Metody nie zajmują miejsca, stanowią część pamięci przeznaczonej do funkcjonowania obiektu.

Niektóre kompilatory stosują specyficzny sposób przechowywania zmiennych. W takim przypadku zmienne dwubajtowe mogą faktycznie zajmować więcej miejsca niż dwa bajty. Możesz sprawdzić w dokumentacji od swojego kompilatora, jak to jest zorganizowane u Ciebie. W tym miejscu nie będziemy się wdawać w szczegóły.

P: Dlaczego nie powinienem wszystkich elementów klasy deklarować jako publicznych?

O: Elementy prywatne zwalniają użytkownika klasy z zastanawiania się, jak dane są przechowywane. Przykładowo klasa Kot posiada metodę PobierzWiek (). Użytkownik klasy Kot może wykorzystać tę funkcję i nie musi wiedzieć, czy wiek jest przechowywany w zmiennej, czy jest wyliczany na bieżąco.


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0097 Proste klasy 83Dostęp do zasobów klasy Jeśli masz zdefiniowany obiekt Kot
Poznaj C++ w$ godziny0101 Proste klasy 87 Linia 12 rozpoczyna sekcję prywatną, która w tym wypadku s
Poznaj C++ w$ godziny0095 Proste klasy 81 Proste klasy 81 NOWY TERMIN Klienci twojej klasy to inne k
Poznaj C++ w$ godziny0103 Proste klasy 89 W tym miejscu należy zwrócić uwagę na dwie ważne rzeczy: □
Poznaj C++ w$ godziny0099 Proste klasy85 unsigned int Waga; void Miaucz(); Kot.Frisky; Frisky.Wiek =
Poznaj C++ w$ godziny0116 Więcej o klasach 103 Zwróć uwagę, że ten rodzaj błędów jest bardzo trudny
Poznaj C++ w$ godziny0184 Zaawansowane referencje i wskaźniki 173 Ponieważ wiemy, że obiekt nie będz
Zdjęcie3900 58 Rozdział 2. Definicje dyslcksji Często znajdujemy także odniesienie do objawów, miano
Poznaj C++ w$ godziny0092 KlasyGodzina 6    Proste klasy 7    Więcej o
Poznaj C++ w$ godziny0005 Część VI Tematy specjalne 293 20 Specjalne klasy i
Poznaj C++ w$ godziny0031 Godzina 2 Program w C++ Zanim zaczniemy dokładnie poznawać szczegóły progr
Poznaj C++ w$ godziny0033 Program w C++ 17 Sednem naszego programu jest linia 5. Obiekt cout użyty z
Poznaj C++ w$ godziny0062 Instrukcje i wyrażenia 47Instrukcja if Normalnie program wykonuje się lini
Poznaj C++ w$ godziny0072 58 Godzina 5 Rysunek 5.1 W momencie wywołania funkcji program przechodzi d
Poznaj C++ w$ godziny0093 Godzina 6 hProste klasy Klasy stanowią rozszerzenie możliwości C++, pozwal
Poznaj C++ w$ godziny0094 80 Godzina 6 Typ zawiera informacje o: • □    Rozmiarze w p
Poznaj C++ w$ godziny0106 Godzina 7Więcej o klasach W trakcie godziny 6, „Proste klasy”, nauczyłeś s
Poznaj C++ w$ godziny0111 98 Godzina 7Listing 7.2. Implementacja klasy Kot w pliku kot . CPP. 1: &nb
Poznaj C++ w$ godziny0112 Więcej o klasach 99Klasy wykorzystujące inne klasy jako dane wewnętrzne Ba

więcej podobnych podstron