197
Listing 14.2. Przeciążenie operatora inkrementacji
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
// Listing 14.2
// Przeciążenie operatora inkrementacji #include <iostream.h>
class Licznik
public:
Licznik () ;
-Licznik () {}
int PobierzWartosc()const { return jegoWartosc; } void UstawWartosc(int x) {jegoWartosc = x; } void IncrementO { ++jegoWartosc; } const Liczniks operator++ {);
private:
int jegoWartosc;
Licznik::Licznik() : jegoWartosc(0)
const Liczniks Licznik::operator++()
++jegoWartosc; return *this;
int main()
Licznik i;
cout « "Wartość i wynosi " « i.PobierzWartosc() « endl; i.Increment();
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; return 0;
ł
EFEKT DZIAŁANIA:
Wartość i wynosi: 0 Wartość i wynosi: 1 Wartość i wynosi: 2 Wartość a: 3 oraz i: 3
197
Listing 14.2. Przeciążenie operatora Inkrementacji
1:
2:
3:
4:
5:
6:
7:
6:
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 4 4
// Listing 14.2
// Przeciążenie operatora inkrementacji finclude <iostream.h>
class Licznik
public:
Licznik();
-Licznik () {}
int PobierzWartosc()const i return jegoWartosc; ) void UstawWartosc(int x) {jegoWartosc = x; ) void IncrementO { ++jegoWartosc; ) const Liczniki operator++ ();
private:
int jegoWartosc;
Licznik::Licznik(): jegoWartosc(0)
const Liczniki Licznik::operator++{)
++jegoWartosc; return *this; i
int main()
Licznik i;
cout « "Wartość i wynosi " « i.PobierzWartosc() « endl; i.Increment{);
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; return 0;
Wartość i wynosi: 0 Wartość i wynosi: 1 Wartość i wynosi: 2 Wartość a: 3 oraz i: 3