16.05.2015 Views

Programowanie w C++ Borland Builder - Wyższa Szkoła Informatyki ...

Programowanie w C++ Borland Builder - Wyższa Szkoła Informatyki ...

Programowanie w C++ Borland Builder - Wyższa Szkoła Informatyki ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

zastosowania: określenie adresu w pamęci oraz tworzenie<br />

wskazania. Aby rozróżnić te dwie sytuacje zwróć uwagę na<br />

"gramatykę" zapisu. Jeśli identyfikator zminnej jest poprzedzony<br />

określeniem typu zminnej:<br />

int &zmienna; /* lub */ int &zmienna = ... ;<br />

to zmienną nazywamy "zmienną referencyjną". Jeśli natomiast<br />

identyfikator nie został poprzedzony określeniem typu:<br />

p = &zmienna;<br />

to mówimy wtedy o adresie zmiennej.<br />

Przekazanie argumentu do funkcji poprzez referencję jest w<br />

istocie zbliżone do przekazania wskaźnika do argumentu. Zwróć<br />

uwagę, że przekazanie wskaźnika do obiektu może zwykle odbyć się<br />

szybciej niż sporządzenie kopii obiektu i przekazanie tej kopii<br />

do funkcji. Zastosowanie w deklaracji funkcji operatora<br />

adresowego & pozwala nam stosować syntaktykę zapisu taką "jak<br />

zwykle" - przy przekazaniu przez wartość. Jeśli nie chcemy<br />

ryzykować zmian wprowadzonych do oryginalnego parametru<br />

przekazanego funkcji poprzez wskazanie, możemy zadeklarować<br />

oryginalny parametr jako stałą (kompilator "dopilnuje" i<br />

uniemożliwi zmianę wartości):<br />

nazwa_funkcji(const &nazwa_obiektu);<br />

________________________________________________________________<br />

Poprosimy <strong>C++</strong> by pokazał nam konkretne fizyczne adresy<br />

skojarzone z identyfikatorami "zmienna" i "ksywa". Operator &<br />

oznacza dla <strong>C++</strong><br />

&X --> adres w pamięci zmiennej X<br />

[P112.CPP]<br />

/* UWAGA: Program moze potrzebowac modelu wiekszego niz<br />

domyslnie ustawiany MODEL SMALL */<br />

# include "iostream.h"<br />

main()<br />

{<br />

int zmienna = 6666;<br />

int& ksywa = zmienna;<br />

cout

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!