do koszyka |
do koszyka |
do koszyka |
do koszyka |
do koszyka |
do koszyka |
do koszyka |
do koszyka |
do koszyka |
KURS JĘZYKA C++ PODSTAWY
00. Informacje ogólne - wstęp 01. Praca z konsolą - początki - cout 02. Zmienne (int, float, double) 03. Konsola cd. - cin 04. Zmienne tekstowe - (char, string) 05. Operatory 06. Instrukcje warunkowe (if - else, switch - case) 07. Pętle (for, while) 08. Instrukcje warunkowe cd. 09. Break, Continue 10. Funkcje 11. Zakresy ważności 12. Tablice zmiennych 13. Mała powtórka :))) 14. Struct - struktury 15. String, Vector - wstęp do STL 16. Wskaźniki, referencje 16a. Wskaźnik do typów prostych 16b. Wskaźnik do funkcji 16c. Operatory new i delete 16d. Referencje 17. Pliki źródłowe i nagłówkowe Zadania powtórzeniowe 18. Class - klasy 19. Konstruktor , destruktor 20. Argumenty domyślne, przeciążanie (przeładowanie) funkcji i operatorów C++ FAQ: 01. Operacje na plikach, odczyt/zapis02. Nie działa mi polecenie gotoxy() co robić ? 03. Jaki podręcznik do nauki C++ ? ostatnia aktualizacja: 29.08.2005 WSKAŹNIKI, REFERENCJE
4. Referencje.
Co to właściwie jest referencja? Upraszczając sprawę można powiedzieć, że jest to "przezwisko" dla wskaźnika. Do czego może nam się to przydać? Najczęściej stosuje się referencje przy przekazywaniu parametrów do funkcji. Jak wiemy funkcja jako rezultat swojego działania może zwrócić tylko jedną wartość określonego typu, co w przypadku gdy chcemy aby nasza funkcja zwracała więcej wyników równocześnie? Oczywiście możemy utworzyć zmienne globalne i w nich przechowywać określone wyniki, nie jest to jednak zalecane gdyż zwiększanie ilość zmiennych globalnych zdecydowanie utrudnia późniejszą analizę kodu programu. Referencję oznaczamy znaczkiem "&" (and). Myślę, że najłatwiej będzie zrozumieć o co w tym chodzi na prostym przykładzie. Utworzyliśmy sobie 3 zmienne typu int (i_A,i_B,i_C), wyświetlamy ich zawartość (po prostu dla uniknięcia wątpliwości) następnie wywołujemy funkcję Zmiana, jako parametry w tej funkcji podajemy referencje do naszych zmiennych (prościej mówiąc nie przekazujemy samych wartości zmiennych tylko adresy do zmiennych - gdzie są umieszczone w pamięci). W samej funkcji dokonujemy modyfikacji zmiennych poprzez ich adres a nie nazwę (o adresie świadczy gwiazdka przed nazwą zmiennej). Po powrocie z funkcji w programie głównym wyświetlamy ponownie zawartość zmiennych aby potwierdzić wynik działania naszego programu. W ten prosty sposób mogliśmy "zwrócić" z naszej funkcji 3 "rzeczy" ( w tym przypadku 3 zmienne typu int) zamiast jednej jak do tej pory. Niektórzy mogą miec problem z zapisem zmiennych w powyższy sposób (dużo tych gwiazdek - łatwo coś przegapić), aby to uprościć odrobinę można stosować także poniższy zapis: (choć prawdę mowiąc nie jest to zalecane) Jak widać program specjalnie się nie różni od poprzednika jedyną istotną zmianą jest typ dostępu do zmiennych, nie odwołujemy się do nich przez adres (z *) lecz jak do jedno elementowych tablic typu int. |
|