60872

60872



78 10. Przeciążanie operatorów

pocz[i] += b.pocz[i];

>

Metodę tę wywołujemy następująco: a.Dodaj(b);

gdzie a i b są obiektami klasy Wektor.

Przypomnijmy sobie, jaką operację realizuje metoda Dodaj(). Otóż metodę Dodaj() można by zapisać następująco:

void Wektor::Dodaj(Wektor b)

{

int i;

for (i=0; i<this->liczba; i++) this->pocz[i] += b.poczCi];

>

Zmiana jaka nastąpiła, to jawne dodanie wskaźnika tliis wskazującego obiekt, na rzecz którego dana metoda została wywołana. Jeżeli zatem napiszemy:

a.Dodaj(b);

to wskaźnik tłiis wskazuje na obiekt a. Realizowana operacja zaś to: a = a + b;

A w skróconym zapisie: a += b;

Warto się zastanowić, czy nie byłoby sensownie zastąpić metodę Do-daj() po prostu operatorem +=. Nie potrzeba wtedy |>amiętać ja kij operację realizuje metoda Dodaj(). W języku C++ wystarczy zdefiniować metodę o nazwie:

operator +=

i następującej treści (metodę definiujemy w klasie pochodnej):



Wyszukiwarka

Podobne podstrony:
SPIS4 TIF le wskazówki 10    Przeciążanie operatorów
ScanImage77 (3) V.12V.10 4 ffHHffHHf + + + + + + + + + + + + + + + + + + -f Łańcuszek pocz.: wielokr
2011 01 10 14 56 27 01 Wyrok ETS z dnia 6 marca 1979 r. w sprawie 92/78 Simmenth i przeciwko Komisji
Poznaj C++ w$ godziny0219 210 Godzina 14Pytania i odpowiedzi P: Po co przeciążać operator skoro możn
f0a085d3390b9cb7 SENTENCJA NA NOtfY TYDZIEŃ Nie mam nic przeciwko przychodzeniu do pracy, ale te&nb
MG 68 Przeciążone operatory i funkcje konwersji Op«Kj* Typ argumentu a Typ argumentu b Typ
img136 136 10. Metody ciągowe W kolejnych podrozdziałach przedstawimy te metody, prezentując: mechan
IMG156 156 13.2.3* Metoda dwóch watoaicrzy Metodę tę stosuje 8lę do pomiaru mocy czynnej układów
PICT5457 Metodę tę można stosować jako jedyny sposób oddziaływania bądź jako metodę uzupełniającą (n

więcej podobnych podstron