Poznaj C++ w$ godziny0208

Poznaj C++ w$ godziny0208



Przeciążanie operatorów 199

Listing 14.3. Operator przedrostkowy i przyrostkowy

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


// Listing 14.3

// Operator przyrostkowy i przedrostkowy finclude <iostream.h>

class Licznik

{

public:

Licznik () ;

-Licznik () {}

int PobierzWartosc()const { return jegoWartosc; } void UstawWartosc(int x) {jegoWartosc = x; } const LicznikS operator++ ();    // przedrostkowy

const Licznik operator++ (int);    // przyrostkowy

private:

int jegoWartosc;

);

Licznik;:Licznik(): jegoWartosc(0)

U

const LicznikS Licznik::operator++{)

(

++jegoWartosc; return *this;

)

const Licznik Licznik;:operator++(int)

{

Licznik temp(*this);

++jegoWartosc; return temp;

)

int main()

{

Licznik i;

cout « "Wartość i wynosi " « i.PobierzWartosc() « endl; i++;

cout « "Wartość i wynosi " « i.PobierzWartosc() « endl; ++i ;

cout « "Wartość i wynosi " « i.PobierzWartosc() « endl; Licznik a = ++i;

cout « "Wartość a: " « a.PobierzWartosc(); cout « " oraz i: " « i.PobierzWartosc() « endl; a = i++;

cout « "Wartość a: " « a.PobierzWartosc(); cout « " oraz i: " « i.PobierzWartosc() « endl; return 0;

}

Listing 14.3. Operator przedrostkowy I przyrostkowy

1:    // Listing 14.3

2:    II Operator przyrostkowy i przedrostkowy

3:

4:

5:    Oinclude <iostream.h>

6:

7:    class Licznik

8:    {

9:    public:

10:    Licznik ();

11:    -Licznik()U

12:    int PobierzWartosc()const    ( return jegoWartosc; )

13:    void OstawWartosc(int x) (jegoWartosc = x; )

14:    const Liczniki operator++    ();    //    przedrostkowy

15:    const Licznik operator++ (int);    //    przyrostkowy

16:

17:    private:

18:    int jegoWartosc;

19:    };

20:

21:    Licznik::Licznik ():

22:    jegoWartosc(0)

23:    O

24:

LicznikS Licznik::operator++()

++jegoWartosc; return *this;


25:    const

26:    {

27:

28:

29:    }

30:

31:    const Licznik Licznik::operator++(int)

32:    (

33:    Licznik temp(*this);

34:    ++jegoWartosc;

35:    return temp;

36:    )

37:

main ()

Licznik i;

cout « "Wartość i wynosi " « i.PobierzWartosc() « endl; i++;

cout « "Wartość i wynosi " « i.PobierzWartosc() « endl; ++i;

cout « "Wartość i wynosi ” « i.PobierzWartosc() « endl; Licznik a = ++i;

cout « "Wartość a: " « a.PobierzWartosc(); cout « " oraz i: " « i.PobierzWartosc() « endl; a = i++;

cout « "Wartość a: " « a.PobierzWartosc(); cout « " oraz i: " « i.PobierzWartosc() « endl; return 0;


38:    int

39:    {

40:

41:

42:

43:

44:

45:

46:

47:

48:

49:

50:

51:

52:

53:    )


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0204 Przeciążanie operatorów W poprzednim rozdziale nauczyłeś się przeciążać me
Poznaj C++ w$ godziny0210 Przeciążanie operatorów 201 Przeciążanie operatorów
Poznaj C++ w$ godziny0212 Przeciążanie operatorów 203 ITrzy = 1Jeden + lDwa; niż ITrzy - 1Jeden.Doda
Poznaj C++ w$ godziny0216 Przeciążanie operatorów 207 EFEKT DZIAŁANIA: Compile error! Unable to conv
Poznaj C++ w$ godziny0218 Przeciążanie operatorów 209 23:    {} 24: 25:
Poznaj C++ w$ godziny0206 197Przeciążanie operatorów Listing 14.2. Przeciążenie operatora
Poznaj C++ w$ godziny0214 Przeciążanie
Poznaj C++ w$ godziny0011 X Poznaj C++ w 24 godziny Ograniczenia przy przeciążaniu operatorów
Poznaj C++ w$ godziny0207 198 Godzina 14 198 Godzina 14 ANALIZA: Implementacja operatora ++, zawarta
Poznaj C++ w$ godziny0211 202 Godzina 14Listing 14.5. Operator
Poznaj C++ w$ godziny0219 210 Godzina 14Pytania i odpowiedzi P: Po co przeciążać operator skoro możn
Poznaj C++ w$ godziny0061 46 Godzina 4Operatory relacji Operatory relacji są używane do określenia,
Poznaj C++ w$ godziny0068 Instrukcje i wyrażenia 53 Tabela 4.2. Operatory logiczne Operator Symbol
Poznaj C++ w$ godziny0069 54 Godzina 4Kolejność wykonywania operatorów logicznych Operatory relacji
Poznaj C++ w$ godziny0144 Wskaźniki 133 Operator dostępu pośredniego ( * ) jest używany w dwóch różn
Poznaj C++ w$ godziny0217 208 Godzina 14 licz: 5 ANALIZA: W linii 11 zaszła ważna zmiana. Przeciążyl
MG 68 Przeciążone operatory i funkcje konwersji Op«Kj* Typ argumentu a Typ argumentu b Typ
Poznaj C++ w$ godziny0030 14 Godzina 1 P: Czy można ignorować ostrzeżenia kompilatora (wamings) O: W

więcej podobnych podstron