Poznaj C++ w$ godziny0173

Poznaj C++ w$ godziny0173



162 Godzina 11

Listing 11.6. Implementacja funkcji Zamień () z wykorzystaniem referencji

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


// Listing 11.5. - przekazywanie przez referencje // z wykorzystaniem referencji

#include <iostream.h>

void Zamień(int £x, int £y);

int main()

{

int x • 5, y = 10;

cout « "Main. Przed zamiana, x: " « x « " y: " « y « Zamień (x, y);

cout « "Main. Po zamianie, x: " « x « " y: " « y « "\n"; return 0;

}

void Zamień(int firx, int &ry)

{

int temp;

cout « "Zamień. Przed zamiana, rx: "; cout « rx « " ry: " « ry « "\n";

temp = rx ; rx = ry; ry = temp;

cout « "Zamień. Po zamianie, rx: "; cout « rx « " ry: " « ry « "\n";

>

EFEKT DZIAŁANIA:

Main. Przed zamiana, x: 5 y: 10 Zamień. Przed zamiana, rx: 5 ry: 10 Zamień. Po zamianie, rx: 10 ry: 5 Main. Po zamianie, x: 10 y: 5

ANALIZA:


Podobnie, jak w przykładzie ze wskaźnikami, także i tutaj deklarujemy w linii 10 dwie zmienne, których wartości wypisywane są w linii 12. W linii 13 wywołujemy funkcję Zamień (). Zauważ, że tym razem, bezpośrednio przekazywane są zmienne, a nie ich adresy.

W momencie wywołania funkcji Zamień () program przechodzi do linii 18. W funkcji Zamień () zmienne xiy są identyfikowane przez referencje. Ich wartości są wypisywane w linii 21, bez wykorzystania dodatkowych operatorów. Można tak napisać, gdyż jak już wcześniej wielokrotnie mówiliśmy, stanowią one odnośniki, synonimy oryginalnych zmiennych.

Listing 11.6. Implementacja funkcji Zamień () z wykorzystaniem referencji

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


// Listing 11.5. - przekazywanie przez referencje // z wykorzystaniem referencji

jfinclude <iostream.h>

void Zamień(int Sx, int Sy) ;

int main()

{

int x = 5, y = 10;

" « y «

« y « "\n";


cout « "Main. Przed zamiana, x: " « x « " y: k*"\n";

Zamień(x, y);

cout « "Main. Po zamianie, x: " « x « " y: " return 0;

}

void Zamień(int Srx, int Sry)

(

int temp;

cout « "Zamień. Przed zamiana, rx: cout « rx « " ry: " « ry « "\n";

temp = rx; rx = ry; ry = temp;

cout « "Zamień. Po zamianie, rx: "; cout « rx « ” ry: " « ry « "\n";

}

EFEKT DZIAŁANIA:

Main. Przed zamiana, x: 5 y: 10 Zamień. Przed zamiana, rx: 5 ry: 10 Zamień. Po zamianie, rx: 10 ry: 5 Main. Po zamianie, x: 10 y: 5

ANALIZA:


Podobnie, jak w przykładzie ze wskaźnikami, także i tutaj deklarujemy w linii 10 dwie zmienne, których wartości wypisywane są w linii 12. W linii 13 wywołujemy funkcję Zamień (). Zauważ, że tym razem, bezpośrednio przekazywane są zmienne, a nie ich adresy.

W momencie wywołania funkcji Zamień () program przechodzi do linii 18. W funkcji Zamień () zmienne x i y są identyfikowane przez referencje. Ich wartości są wypisywane w linii 21, bez wykorzystania dodatkowych operatorów. Można tak napisać, gdyż jak już wcześniej wielokrotnie mówiliśmy, stanowią one odnośniki, synonimy oryginalnych zmiennych.


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0175 164 Godzina 11Listing 11.7. Zwracanie wartości przez
Poznaj C++ w$ godziny0170 Referencje 159Przekazywanie argumentów funkcji przez referencje W trakcie
Poznaj C++ w$ godziny0244 236Godzina 16 Dlatego, funkcja Pies:: Machaj Ogonem () ma dostęp do zmienn
Poznaj C++ w$ godziny0111 98 Godzina 7Listing 7.2. Implementacja klasy Kot w pliku kot . CPP. 1: &nb
Poznaj C++ w$ godziny0010 Spis treści    ix 11    Referencje
Poznaj C++ w$ godziny0035 Program w C++ 19Funkcje ■ain() jest funkcją specjalną. Jest automatycznie
Poznaj C++ w$ godziny0036 20 Godzina 2Korzystanie z funkcji Funkcja może zwracać albo jakąś wartość
Poznaj C++ w$ godziny0037 Program w C++ 21 16:    cout « "Wywołanie funkcji Add(
Poznaj C++ w$ godziny0066 Instrukcje i wyrażenia 51 11:    if (x > 10) 12:  &
Poznaj C++ w$ godziny0067 52 Godzina 4 10: 11:    if
Poznaj C++ w$ godziny0072 58 Godzina 5 Rysunek 5.1 W momencie wywołania funkcji program przechodzi d
Poznaj C++ w$ godziny0073 Funkcje 59Rysunek 5.2 Funkcje 59 Prototyp, pod względem typu wartości zwra
Poznaj C++ w$ godziny0075 Funkcje 61Rysunek 5.3 typ zwracanej wartości
Poznaj C++ w$ godziny0077 Funkcje 63EFEKT DZIAŁANIA: Podaj temperaturę w stopniach Fehrenheit-a: 212
Poznaj C++ w$ godziny0079 Funkcje 65Funkcje jako parametry innych funkcji Mimo że można używać funkc
Poznaj C++ w$ godziny0081 Funkcje 67 Program wraca do funkcji main(), do linii 13. Okazuje się, że w
Poznaj C++ w$ godziny0083 Funkcje 69Parametry domyślne Do każdego zadeklarowanego w prototypie i def
Poznaj C++ w$ godziny0084 70 Godzina 5 70 Godzina 5 8: 9: 10 11 12 13 14 15 16 17 18 19 20
Poznaj C++ w$ godziny0085 Funkcje 71Przeciążanie funkcji C++ pozwala na stworzenie więcej niż jednej

więcej podobnych podstron