Poznaj C++ w$ godziny0178

Poznaj C++ w$ godziny0178



Godzina 12

Zaawansowane referencje i wskaźniki

W ciągu ostatnich trzech godzin nauczyłeś się wykorzystywać referencje i wskaźniki. Teraz nauczysz się:

□    Jak wykorzystać przekazywanie przez referencje do zwiększenia efektywności programów

□    Kiedy wykorzystywać wskaźniki, a kiedy referencje

□    Jak, przy używaniu wskaźników, uniknąć problemów z pamięcią

□    Jak unikać pułapek przy wykorzystywaniu referencji

Efektywność przekazywania przez referencje

Za każdym razem, kiedy przekazujesz przez wartość obiekt do funkcji, tworzona jest kopia obiektu. Również, kiedy zwracasz obiekt z funkcji (za pomocą return) jest tworzona kopia.

W przypadku dużych, stworzonych przez użytkownika obiektów, koszt tworzenia kopii jest znaczący. Wykorzystywane jest więcej pamięci niż faktycznie potrzeba i program działa wolniej.

Rozmiar obiektu stworzonego przez użytkownika na stosie jest równy sumie wielkości jego zmiennych wewnętrznych. Każda zmienna wewnętrzna również może być kolejnym obiektem stworzonym przez użytkownika. Przekazywanie tak złożonego i dużego obiektu i kopiowanie go na stos może bardzo obciążać system i spowalniać działanie programu, przy jednoczesnym wzroście zapotrzebowania na pamięć.

Zaawansowane referencje i wskaźniki

W ciągu ostatnich trzech godzin nauczyłeś się wykorzystywać referencje i wskaźniki. Teraz nauczysz się:

□    Jak wykorzystać przekazywanie przez referencje do zwiększenia efektywności programów

□    Kiedy wykorzystywać wskaźniki, a kiedy referencje

□    Jak, przy używaniu wskaźników, uniknąć problemów z pamięcią

□    Jak unikać pułapek przy wykorzystywaniu referencji

Efektywność przekazywania przez referencje

Za każdym razem, kiedy przekazujesz przez wartość obiekt do funkcji, tworzona jest kopia obiektu. Również, kiedy zwracasz obiekt z funkcji (za pomocą return) jest tworzona kopia.

W przypadku dużych, stworzonych przez użytkownika obiektów, koszt tworzenia kopii jest znaczący. Wykorzystywane jest więcej pamięci niż faktycznie potrzeba i program działa wolniej.

Rozmiar obiektu stworzonego przez użytkownika na stosie jest równy sumie wielkości jego zmiennych wewnętrznych. Każda zmienna wewnętrzna również może być kolejnym obiektem stworzonym przez użytkownika. Przekazywanie tak złożonego i dużego obiektu i kopiowanie go na stos może bardzo obciążać system i spowalniać działanie programu, przy jednoczesnym wzroście zapotrzebowania na pamięć.


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0164 Godzina 11Referencje W ciągu ostatnich dwóch godzin nauczyłeś się, jak wyk
Poznaj C++ w$ godziny0019 Godzina 1Zaczynamy Witamy w „Poznaj C++ w 24 godziny”. W ciągu pierwszej g
przed godziną 20. W ciągu ostatnich siedmiu lat zdarzyło się to zaledwie kilka razy. Uczelnia rozwij
104 105 2 3.1.1. Nowoczesne technologie budowlane a technika grzewcza. W ciągu ostatnich kilkunastu
1.3. Główne tendencje zmian w zasobie Ogółem w ciągu ostatnich trzech lat (1999-2001) przejęto 128
CB i rad 012 WSTĘP W ostatnich trzech latach ukazało się kilka pozycji wydawniczych z dziedziny łąc
sz t4 74 74 aspoiny obrót jest ostatnią figurą, jakiej nauczymy się w cha-chy. Wiecie już zapewne d
Image53 140 udał się do uniwersytetu Królewieckiego, gdzie w ciągu lat trzech niespełna, oddając si
Poznaj C++ w$ godziny0165 154 Godzina 11 Wskaźniki są zmiennymi przechowującymi adresy innych obiekt
Poznaj C++ w$ godziny0180 169Zaawansowane referencje i wskaźniki 39:    FunkcjaDruga(
Poznaj C++ w$ godziny0182 Zaawansowane referencje i wskaźniki 171 int PobierzWiek() const { return j
Poznaj C++ w$ godziny0184 Zaawansowane referencje i wskaźniki 173 Ponieważ wiemy, że obiekt nie będz
Poznaj C++ w$ godziny0186 175Zaawansowane referencje i wskaźniki Wskaźnik plnt jest deklarowany i in
Poznaj C++ w$ godziny0188 177Zaawansowane referencje i wskaźniki 18:    ZwyklyKot::Zw
Poznaj C++ w$ godziny0190 Zaawansowane referencje i wskaźniki 179 ZAWSZE NIGDY Zawsze przekazuj p
Poznaj C++ w$ godziny0010 Spis treści    ix 11    Referencje
Poznaj C++ w$ godziny0016 Wstęp Ta książka ma pomóc Ci w poznaniu zasad programowania w C++. W ciągu
Poznaj C++ w$ godziny0088 74 Godzina 5 Last-in first-out oznacza, że ostatnia wartość położona na st
Poznaj C++ w$ godziny0089 Funkcje 75 Kiedy wartość jest odkładana na stos, to jest umieszczana w kom

więcej podobnych podstron