Poznaj C++ w$ godziny0200

Poznaj C++ w$ godziny0200



Zaawansowane funkcje 191

Listing 13.3. Konstruktory kopiujące.

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

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56


// Listing 13.3 // Konstruktory kopiujące

tinclude <iostream.h>

class KOT

{

public:

KOTO;    //    konstruktor domycelny

KOT (const KOT S) ;    //    konstruktor kopiuj 1cy

-KOTO;    //    destruktor

int PobierzHiekO const { return *jegoWiek; } int PobierzWagaO const { return *jegoWaga; } void UstawWiek(int wiek) { *jegoWiek = wiek; }

private:

int ‘jegoWiek; int *jegoWaga;

};

KOT::KOT()

{

jegoWiek = new int; jegoWaga = new int;

♦jegoWiek = 5;

♦jegoWaga = 9;

}

KOT::KOT(const KOT & rhs)

{

jegoWiek = new int; jegoWaga = new int;

♦jegoWiek = rhs.PobierzWiek();

♦jegoWaga = rhs.PobierzWaga();

}

KOT::-KOT()

{

delete jegoWiek; jegoWiek = 0; delete jegoWaga; jegoWaga = 0;

}

int main()

t

KOT frisky;

cout « „wiek Frisky: " « frisky.PobierzWiek() « endl; cout « "Niech Frisky ma 6 lat...\n"; frisky.UstawWiek(6);

cout « "Tworzenie Boot na podstawie Frisky\n";

KOT boot(frisky);

cout « "wiek Frisky: " « frisky.PobierzWiek() « endl; cout « "wiek Boot: " « boot.PobierzWiek() « endl; cout « "Niech Frisky ma 7 lat...\n”; frisky.UstawWiek (7);

Listing 13.3. Konstruktory kopiujące.

1:    // Listing 13.3

2:    // Konstruktory kopiujące

3:

4:    Kinclude <iostream.h>

5:

6:    class KOT

7:    i

8:    public:

9:    KOT();    //    konstruktor doraycelny

10:    KOT (const KOT 4);    // konstruktor kopiujacy

11:    -KOT();    //    destruktor

12:    int PobierzWiek()    const (    return ‘jegoWiek,-    }

13:    int PobierzWaga()    const {    return ‘jegoWaga;    )

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

15:

16:    private:

17:    int ‘jegoWiek;

18:    int ‘jegoWaga;

19:    };

20:

21:    KOT::KOT()

22:    {

23:    jegoWiek = new    int;

24:    jegoWaga = new    int;

25:    ‘jegoWiek = 5;

26:    ‘jegoWaga = 9;

27:    }

28:

29:    KOT::KOT(const KOT 6 rhs)

30:    {

31:    jegoWiek = new    int;

32:    jegoWaga = new    int;

33:    ‘jegoWiek = rhs.PobierzWiek();

34:    ‘jegoWaga = rhs.PobierzWaga();

35:    )

36:

37:    KOT::~KOT()

38:    {

39:    delete jegoWiek;

40:    jegoWiek = 0;

41:    delete jegoWaga;

42:    jegoWaga = 0;

43:    }

44:

45:    int main()

46:    (

47:    KOT frisky;

48:    cout    «    „wiek Frisky:    " «    frisky.PobierzWiek()    «    endl;

49:    cout    «    "Niech Frisky    ma    6    lat...\n";

50:    frisky.UstawWiek(6);

51:    cout « "Tworzenie Boot na podstawie Frisky\n";

52:    KOT boot(frisky);

53:    cout « "wiek Frisky: " « frisky.PobierzWiek() « endl;

54:    cout    «    "wiek Boot: "    «    boot.PobierzWiek()    « endl;

55:    cout    «    "Niech Frisky    ma    7    lat...\n";

56:    frisky.OstawWiek(7);


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0194 Zaawansowane funkcje 185 57: Prost.RysujKsztalt(); 58: cout «
Poznaj C++ w$ godziny0196 Zaawansowane funkcje 187 53:    } 54:    cou
Poznaj C++ w$ godziny0198 Zaawansowane funkcje 189Inicjalizacja obiektów Dotychczas, wartości wewnęt
Poznaj C++ w$ godziny0202 Zaawansowane funkcje 193 W liniach 53 i 54 wypisywany jest wiek obydwu KOT
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$ 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$ godziny0182 Zaawansowane referencje i wskaźniki 171 int PobierzWiek() const { return j
Poznaj C++ w$ godziny0184 Zaawansowane referencje i wskaźniki 173 Ponieważ wiemy, że obiekt nie będz
Poznaj C++ w$ godziny0190 Zaawansowane referencje i wskaźniki 179 ZAWSZE NIGDY Zawsze przekazuj p

więcej podobnych podstron