Poznaj C++ w$ godziny0184

Poznaj C++ w$ godziny0184



Zaawansowane referencje i wskaźniki 173

Ponieważ wiemy, że obiekt nie będzie mógł być pusty (nuli), to do przekazywania obiektów do funkcji lepiej będzie wykorzystać referencje. Ilustruje to listing 12.3.

Listing 12.3. Przekazywanie referencji do obiektów

1:    // Listing 12.3

2:    // Przekazywanie referencji do obiektów

3:

4:    #include <iostream.h>

5:

6:    class ZwyklyKot

7:    {

8:    public:

9:    ZwyklyKot ();

10:    ZwyklyKot(ZwyklyKott);

11:    -ZwyklyKot() ;

12:

13:    int PobierzWiek() const { return jegoWiek; )

14:    void UstawWiek(int wiek) { jegoWiek = wiek; }

15:

16:    private:

17:    int jegoWiek;

18:    } ;

19:

20:    ZwyklyKot::ZwyklyKot()

21: {.

22:    cout « "Konstruktor zwykłego kota...\n";

23:    jegoWiek = 5;

24:    }

25:

2 6:    ZwyklyKot::ZwyklyKot(ZwyklyKotS)

27:    {

28:    cout « "Konstruktor kopiujący zwykłego kota...\n";

29:    }

30:

31:    ZwyklyKot::-ZwyklyKot()

32:    {

33:    cout « "Destruktor zwykłego kota...\n";

34:    )

35:

36:    const ZwyklyKot & FunkcjaDruga (const ZwyklyKot S kot);

37:

38:    int main()

39:    {

40:    cout « "Tworzenie kota...\n";

41:    ZwyklyKot Frisky;

42:    cout « "Frisky ma " « Frisky.PobierzWiek() « " lat\n";

43:    int wiek = 10;

44:    Frisky.UstawWiek(wiek);

45:    cout « "Frisky ma " « Frisky.PobierzWiek() « " lat\n";

46:    cout « "Wywołanie FunkcjaDruga...\n";

lat\n";


47:    FunkcjaDruga(Frisky);

48:    cout « "Frisky ma " « Frisky.PobierzWiek() « "

49:    return 0;

50:    }

51:

Ponieważ wiemy, że obiekt nie będzie mógł być pusty (nuli), to do przekazywania obiektów do funkcji lepiej będzie wykorzystać referencje. Ilustruje to listing 12.3.

Listing 12.3. Przekazywanie referencji do obiektów

X:    // Listing 12.3

2:    // Przekazywanie referencji do obiektów

3:

4:    Dinclude <iostream.h>

5:

6:    class ZwyklyKot

7:    {

8:    public:

9:    ZwyklyKot ();

10:    ZwyklyKot(ZwyklyKoti);

11:    -ZwyklyKot () ;

12:

13:    int PobierzWiek() const ( return jegoWiek; )

14:    void UstawWiek(int wiek) { jegoWiek = wiek; )

15:

16:    private:

17:    int jegoWiek;

18:    );

19:

20:    ZwyklyKot::ZwyklyKot()

21:    (

22:    cout « "Konstruktor zwykłego kota...\n";

23:    jegoWiek = 5;

24:    )

25:

26:    ZwyklyKot::ZwyklyKot(ZwyklyKotS)

27:    (

28:    cout « "Konstruktor kopiujący zwykłego kota...\n";

29:    )

30:

31:    ZwyklyKot::-ZwyklyKot()

32:    {

33:    cout « "Destruktor zwykłego kota...\n";

34:    )

35:

36:    const ZwyklyKot & FunkcjaDruga (const ZwyklyKot & kot);

37:

38:    int main()

39:    {

40:    cout « "Tworzenie kota...\n”;

41:    ZwyklyKot Frisky;

42:    cout « "Frisky ma " « Frisky.PobierzWiek() « " lat\n”;

43:    int wiek = 10;

44:    Frisky.UstawWiek(wiek);

45:    cout « "Frisky ma " « Frisky.PobierzWiek() « " lat\n”;

46:    cout « "Wywołanie FunkcjaDruga..,\n";

lat\n";


47:    FunkcjaDruga(Frisky);

48:    cout « "Frisky ma " « Frisky.PobierzWiek() « "

4 9:    return 0;

50:    }

51:


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0182 Zaawansowane referencje i wskaźniki 171 int PobierzWiek() const { return j
Poznaj C++ w$ godziny0190 Zaawansowane referencje i wskaźniki 179 ZAWSZE NIGDY Zawsze przekazuj p
Poznaj C++ w$ godziny0158 Zaawansowane wykorzystanie wskaźników 147 32:    } 33: 34:
Poznaj C++ w$ godziny0160 Zaawansowane wykorzystanie wskaźników 149Do czego służy wskaźnik this Gdyb
Poznaj C++ w$ godziny0162 Zaawansowane wykorzystanie wskaźników 151 Zaawansowane wykorzystanie wskaź
Poznaj C++ w$ godziny0180 169Zaawansowane referencje i wskaźniki 39:    FunkcjaDruga(
Poznaj C++ w$ godziny0186 175Zaawansowane referencje i wskaźniki Wskaźnik plnt jest deklarowany i in
Poznaj C++ w$ godziny0188 177Zaawansowane referencje i wskaźniki 18:    ZwyklyKot::Zw
Poznaj C++ w$ godziny0178 Godzina 12Zaawansowane referencje i wskaźniki W ciągu ostatnich trzech god
Poznaj C++ w$ godziny0119 Zaawansowane sterowanie programem 107Pętle while Pętla while pozwala na po
Poznaj C++ w$ godziny0121 Zaawansowane sterowanie programem 109 W liniach 12-15 wprowadzamy wartości
Poznaj C++ w$ godziny0123 Zaawansowane sterowanie programem 111 W linii 32 obliczana jest reszta z d
Poznaj C++ w$ godziny0125 Zaawansowane sterowanie programem Listing 8.6. Pomijanie pętli while 1:
Poznaj C++ w$ godziny0127 Zaawansowane sterowanie programem 115Listing 8.8. Jeszcze raz pętla while
Poznaj C++ w$ godziny0129 Zaawansowane sterowanie programem 117Listing 8.10. Demonstracja wielokrotn
Poznaj C++ w$ godziny0131 Zaawansowane sterowanie programem 119EFEKT DZIAŁANIA: No to ile razy sie p
Poznaj C++ w$ godziny0133 Zaawansowane sterowanie programem 121 Jaki znak?
Poznaj C++ w$ godziny0135 Zaawansowane sterowanie programem 153 20:    break; 21: &nb
Poznaj C++ w$ godziny0156 145Zaawansowane wykorzystanie wskaźników W liniach 6-13 deklarujemy klasę

więcej podobnych podstron