Poznaj C++ w$ godziny0103

Poznaj C++ w$ godziny0103



Proste klasy 89

W tym miejscu należy zwrócić uwagę na dwie ważne rzeczy:

□    Konstruktor domyślny to dowolny konstruktor nie pobierający parametrów. Nie ma znaczenia czy zadeklarujesz go sam, czy zrobi to za Ciebie kompilator.

□    Jeśli zadeklarujesz jakikolwiek konstruktor (nie ważne czy pobiera on parametry, czy nie) to kompilator nie stworzy konstruktora domyślnego. W tym wypadku, jeśli chcesz mieć konstruktor domyślny, musisz go sam zadeklarować.

Jeśli nie zadeklarujesz destruktora, to podobnie jak w przypadku konstruktora, kompilator stworzy domyślny destruktor, nie wykonujący żadnych czynności:

-Kot: :Kot()

i

)

Pamiętaj, jeśli zadeklarujesz konstruktor to zadeklaruj również destruktor (nawet jeśli jest on pusty). Nie zabiera to wiele czasu, a czyni program bardziej eleganckim i czytelniejszym.

Listing 6.2. to modyfikacja listingu 6.1. wzbogacona o konstruktor inicjalizujący obiekt klasy Kot, ustawiający wiek kota (jeśli został podany). Demonstruje on również, kiedy wywoływany jest destruktor.

Listing 6.2. Użycie konstruktorów i destruktoró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

30

31

32


// Demonstracja deklaracji konstruktora // i destruktora klasy Kot


#include <iostream.h>


// niezbedne dla cout


class Kot {


// początek deklaracji klasy


public:

Kot(int wiek);

~Kot() ; int PobierzWiekO;    //

void UstawWiek(int wiek); void Miaucz(); private:

int jegoWiek;    //


// początek sekcji publicznej // konstruktor // destruktor

funkcja dostępu

// funkcja dostępu // funkcja ogolna // początek sekcji prywatnej zmienna wewnętrzna


// konstruktor klasy Kot Kot::Kot(int wiek)

{

jegoWiek = wiek;

}


Kot: :-Kot() {

)


II destruktor - nic nie robi


// PobierzWiekO - funkcja dostępu // zwraca wartość zmiennej jegoWiek int Kot::PobierzWiek()

{


W tyra miejscu należy zwrócić uwagę na dwie ważne rzeczy:

□    Konstruktor domyślny to dowolny konstruktor nie pobierający parametrów. Nie ma znaczenia czy zadeklarujesz go sam, czy zrobi to za Ciebie kompilator.

□    Jeśli zadeklarujesz jakikolwiek konstruktor (nie ważne czy pobiera on parametry, czy nie) to kompilator nie stworzy konstruktora domyślnego. W tym wypadku, jeśli chcesz mieć konstruktor domyślny, musisz go sam zadeklarować.

Jeśli nie zadeklarujesz destruktora, to podobnie jak w przypadku konstruktora, kompilator stworzy domyślny destruktor, nie wykonujący żadnych czynności:

-Kot: :Kot()

{

)

Pamiętaj, jeśli zadeklarujesz konstruktor to zadeklaruj również destruktor (nawet jeśli jest on pusty). Nie zabiera to wiele czasu, a czyni program bardziej eleganckim i czytelniejszym.

Listing 6.2. to modyfikacja listingu 6.1. wzbogacona o konstruktor inicjalizujący obiekt klasy Kot, ustawiający wiek kota (jeśli został podany). Demonstruje on również, kiedy wywoływany jest destruktor.

Listing 6.2. Użycie konstruktorów i destruktoró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

30

31

32


// Demonstracja deklaracji konstruktora // i destruktora klasy Kot

#include <iostream.h>    II niezbedne dla cout


class Kot {

public:

Kot(int wiek); ~Kot() ;

int PobierzWiek(); void UstawWiek(int void Miaucz(); private:

int jegoWiek;

);

// konstruktor klasy Kot Kot::Kot(int wiek)

1

jegoWiek = wiek;

)

II początek deklaracji klasy

// początek sekcji publicznej II konstruktor II destruktor // funkcja dostępu wiek);    // funkcja dostępu

II funkcja ogolna // początek sekcji prywatnej // zmienna wewnętrzna

Kot::~Kot()    // destruktor - nic nie robi

i

1


// PobierzWiek() - funkcja dostępu // zwraca wartość zmiennej jegoWiek int Kot: : PobierzWiek ()

(


return jegoWiek;


Wyszukiwarka

Podobne podstrony:
Scan011520105127 252 MATERIAŁY INŻYNIERSKIE W tym miejscu trzeba zwrócić uwagę na konieczność ostro
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$ godziny0097 Proste klasy 83Dostęp do zasobów klasy Jeśli masz zdefiniowany obiekt Kot
Poznaj C++ w$ godziny0105 Proste klasy 91 Linia 58 zawiera definicję obiektu Frisky (będącego klasy
Skan W tym miejscu pragnę zwrócić uwagę, że pomoc społeczna organizowana przez Państwo w systemie r
IMG89 ►Przygotowanie przedprotetyczne Należy zwrócić uwagę: Ocena uzębienia    Kszta
DSC00964 (2) w związku z tym należy zwrócić uwagę na sposób ułożenia ogniw w uchwycie. Sposób ułożen
img103 (6) Ostrzem szpilki oznaczamy położenie punktu 4. Należy zwrócić uwagę na pewien szczegół. Ot
img105 (6) Ostrzem szpilki oznaczamy położenie punktu 4. Należy zwrócić uwagę na pewien szczegół. Ot
skanuj0319 (2) PHP i MySQL dla każdego Należy zwrócić uwagę na argument nazwa, którym jest nazwa tab
img8 (8) Ograniczenia transakcji Wykorzystując transakcje należy zwrócić uwagę na kilka elementów: ♦
str. 53INSTRUKCJA MONTAŻU LICZNIKA CIEPŁAPrzed rozpoczęciem montażu należy zwrócić uwagę na

więcej podobnych podstron