Jesse Liberty c++ dla każdego full version, ebooki2
[ Pobierz całość w formacie PDF ]
2
C++ dla kadego
Rozdział 3. Zmienne i stałe................................................................................49
Czym jest zmienna? ..........................................................................................................49
Dane s przechowywane w pamici ...........................................................................49
Przydzielanie pamici.................................................................................................50
Rozmiar liczb całkowitych .........................................................................................51
Zapis ze znakiem i bez znaku .....................................................................................52
Podstawowe typy zmiennych......................................................................................53
Definiowanie zmiennej .....................................................................................................54
Uwzgldnianie wielko6ci liter.....................................................................................55
Słowa kluczowe..........................................................................................................56
Tworzenie kilku zmienych jednocze6nie ..........................................................................56
Przypisywanie zmiennym warto6ci...................................................................................56
typedef...............................................................................................................................58
Kiedy u*ywa+ typu short, a kiedy typu long?...................................................................59
Zawinicie liczby całkowitej bez znaku .....................................................................60
Zawinicie liczby całkowitej ze znakiem ...................................................................61
Znaki..................................................................................................................................62
Znaki i liczby ..............................................................................................................62
Znaki specjalne ...........................................................................................................63
Stałe...................................................................................................................................64
Literały........................................................................................................................64
Stałe symboliczne .......................................................................................................64
Stałe wyliczeniowe............................................................................................................66
Rozdział 4. Wyra#enia i instrukcje......................................................................69
Instrukcje...........................................................................................................................69
Białe spacje.................................................................................................................70
Bloki i instrukcje zło*one ...........................................................................................70
Wyra*enia..........................................................................................................................70
Operatory...........................................................................................................................72
Operator przypisania...................................................................................................72
Operatory matematyczne............................................................................................73
Dzielenie całkowite i reszta z dzielenia......................................................................73
Łczenie operatora przypisania z operatorem matematycznym .......................................74
Inkrementacja i dekrementacja..........................................................................................75
Przedrostki i przyrostki...............................................................................................75
Kolejno6+ działaF..............................................................................................................77
Zagnie*d*anie nawiasów...................................................................................................78
Prawda i fałsz....................................................................................................................79
Operatory relacji .........................................................................................................79
Instrukcja if .......................................................................................................................80
Styl wci+....................................................................................................................83
else ..............................................................................................................................84
Zaawansowane instrukcje if........................................................................................86
U*ycie nawiasów klamrowych w zagnie*d*onych instrukcjach if...................................87
Operatory logiczne............................................................................................................89
Logiczne I ...................................................................................................................90
Logiczne LUB.............................................................................................................90
Logiczne NIE..............................................................................................................90
Skrócone obliczanie wyra*eF logicznych.........................................................................91
Kolejno6+ operatorów logicznych.....................................................................................91
Kilka słów na temat prawdy i fałszu.................................................................................92
Operator warunkowy (trójelementowy)............................................................................93
Spis treci
3
Rozdział 5. Funkcje ...........................................................................................95
Czym jest funkcja?............................................................................................................95
Zwracane warto6ci, parametry i argumenty......................................................................96
Deklarowanie i definiowanie funkcji................................................................................97
Deklarowanie funkcji..................................................................................................97
Prototypy funkcji ........................................................................................................98
Definiowanie funkcji ..................................................................................................99
Wykonywanie funkcji.....................................................................................................100
Zmienne lokalne..............................................................................................................101
Zakres........................................................................................................................102
Zmienne globalne............................................................................................................102
Zmienne globalne: ostrze*enie........................................................................................104
Kilka słów na temat zmiennych lokalnych .....................................................................104
Instrukcje funkcji.............................................................................................................106
Kilka słów na temat argumentów funkcji .......................................................................106
U*ycie funkcji jako parametrów funkcji...................................................................106
Parametry s zmiennymi lokalnymi................................................................................107
Kilka słów na temat zwracanych warto6ci......................................................................109
Parametry domy6lne........................................................................................................111
Przeci*anie funkcji ........................................................................................................113
Zagadnienia zwizane z funkcjami.................................................................................116
Funkcje typu inline ...................................................................................................116
Rekurencja ................................................................................................................118
Jak działaj funkcje — rzut oka „pod mask” ................................................................123
Poziomy abstrakcji....................................................................................................123
Podział pamici.........................................................................................................123
Stos i funkcje.............................................................................................................126
Rozdział 6. Programowanie zorientowane obiektowo.........................................129
Czy C++ jest zorientowane obiektowo? .........................................................................129
Tworzenie nowych typów...............................................................................................130
Po co tworzy+ nowy typ?..........................................................................................131
Klasy i składowe .............................................................................................................131
Deklarowanie klasy...................................................................................................132
Kilka słów o konwencji nazw...................................................................................132
Definiowanie obiektu................................................................................................133
Klasy a obiekty .........................................................................................................133
Dostp do składowych klasy...........................................................................................134
Przypisywa+ nale*y obiektom, nie klasom...............................................................134
Czego nie zadeklarujesz, tego klasa nie bdzie miała ..............................................134
Prywatne i publiczne.......................................................................................................135
Oznaczanie danych składowych jako prywatnych ...................................................137
Prywatno6+ a ochrona...............................................................................................138
Implementowanie metod klasy........................................................................................140
Konstruktory i destruktory..............................................................................................142
Domy6lne konstruktory i destruktory .......................................................................143
U*ycie domy6lnego konstruktora .............................................................................143
Funkcje składowe const ..................................................................................................146
Interfejs a implementacja................................................................................................147
Gdzie umieszcza+ deklaracje klasy i definicje metod.....................................................150
Implementacja inline.......................................................................................................151
Klasy, których danymi składowymi s inne klasy..........................................................153
Struktury..........................................................................................................................157
Dlaczego dwa słowa kluczowe spełniaj t sam funkcj........................................157
4
C++ dla kadego
Rozdział 7. Sterowanie przebiegiem działania programu ....................................159
Ptle.................................................................................................................................159
Pocztki ptli: instrukcja goto...................................................................................159
Dlaczego nie jest zalecane stosowanie instrukcji goto?............................................160
Ptle while.......................................................................................................................160
Bardziej skomplikowane instrukcje while................................................................162
continue oraz break...................................................................................................163
Ptla while (true).......................................................................................................166
Ptla do...while................................................................................................................167
do...while.........................................................................................................................168
Ptle for...........................................................................................................................170
Zaawansowane ptle for ...........................................................................................171
Puste ptle for ...........................................................................................................174
Ptle zagnie*d*one....................................................................................................175
Zakres zmiennych w ptlach for...............................................................................177
Podsumowanie ptli ........................................................................................................178
Instrukcja switch .............................................................................................................180
U*ycie instrukcji switch w menu..............................................................................182
Program podsumowujcy wiadomo6ci............................................................................186
Cz II .......................................................................................191
Rozdział 8. Wska-niki......................................................................................193
Czym jest wskaMnik?.......................................................................................................193
Kilka słów na temat pamici.....................................................................................193
U*ycie operatora adresu (&).....................................................................................194
Przechowywanie adresu we wskaMniku....................................................................195
Puste i błdne wskaMniki...........................................................................................195
Nazwy wskaMników..................................................................................................196
Operator wyłuskania.................................................................................................197
WskaMniki, adresy i zmienne ....................................................................................197
Operowanie danymi poprzez wskaMniki...................................................................199
Sprawdzanie adresu ..................................................................................................200
Do czego słu* wskaMniki? .............................................................................................202
Stos i sterta......................................................................................................................203
Operator new.............................................................................................................204
delete.........................................................................................................................204
Wycieki pamici..............................................................................................................206
Tworzenie obiektów na stercie........................................................................................207
Usuwanie obiektów.........................................................................................................207
Dostp do składowych klasy...........................................................................................208
Dane składowe na stercie................................................................................................210
WskaMnik this..................................................................................................................212
Utracone wskaMniki.........................................................................................................214
WskaMniki const ..............................................................................................................217
WskaMniki const i funkcje składowe const ...............................................................218
WskaMniki const this.................................................................................................219
Działania arytmetyczne na wskaMnikach — temat dla zaawansowanych.......................220
Rozdział 9. Referencje.....................................................................................223
Czym jest referencja?......................................................................................................223
U*ycie operatora adresu z referencj..............................................................................225
Nie mo*na zmienia+ przypisania referencji..............................................................226
Spis treci
5
Do czego mog odnosi+ si referencje?..........................................................................227
Zerowe wskaMniki i zerowe referencje............................................................................229
Przekazywanie argumentów funkcji przez referencj.....................................................229
Tworzenie funkcji swap() otrzymujcej wskaMniki..................................................231
Implementacja funkcji swap() za pomoc referencji................................................233
Nagłówki i prototypy funkcji..........................................................................................234
Zwracanie kilku warto6ci................................................................................................235
Zwracanie warto6ci przez referencj ........................................................................237
Przekazywanie przez referencj zwiksza efektywno6+ działania programu.................238
Przekazywanie wskaMnika const...............................................................................241
Referencje jako metoda alternatywna.......................................................................243
Kiedy u*ywa+ wskaMników, a kiedy referencji...............................................................245
Łczenie referencji i wskaMników...................................................................................246
Nie pozwól funkcji zwraca+ referencji do obiektu, którego nie ma w zakresie! ............247
Zwracanie referencji do obiektu na stercie .....................................................................249
WskaMnik, wskaMnik, kto ma wskaMnik?.........................................................................251
Rozdział 10. Funkcje zaawansowane..................................................................253
Przeci*one funkcje składowe ........................................................................................253
U*ycie warto6ci domy6lnych ..........................................................................................255
Wybór pomidzy warto6ciami domy6lnymi a przeci*aniem funkcji............................257
Konstruktor domy6lny.....................................................................................................258
Przeci*anie konstruktorów ............................................................................................258
Inicjalizowanie obiektów ................................................................................................260
Konstruktor kopiujcy.....................................................................................................261
Przeci*anie operatorów .................................................................................................265
Pisanie funkcji inkrementacji....................................................................................266
Przeci*anie operatora przedrostkowego..................................................................267
Zwracanie typów w przeci*onych funkcjach operatorów.......................................268
Zwracanie obiektów tymczasowych bez nadawania im nazw..................................270
U*ycie wskaMnika this...............................................................................................271
Dlaczego stała referencja? ........................................................................................273
Przeci*anie operatora przyrostkowego ...................................................................273
Ró*nica pomidzy przedrostkiem a przyrostkiem....................................................273
Operator dodawania..................................................................................................275
Przeci*anie operatora dodawania............................................................................277
Zagadnienia zwizane z przeci*aniem operatorów.................................................278
Ograniczenia w przeci*aniu operatorów.................................................................278
Co przeci*a+?..........................................................................................................279
Operator przypisania.................................................................................................279
Obsługa konwersji typów danych...................................................................................282
Operatory konwersji..................................................................................................285
Rozdział 11. Analiza i projektowanie zorientowane obiektowo.............................287
Budowanie modeli...........................................................................................................287
Projektowanie oprogramowania: jzyk modelowania ....................................................288
Projektowanie oprogramowania: proces.........................................................................289
Programowanie ekstremalne...........................................................................................292
Pomysł.............................................................................................................................292
Analiza wymagaF............................................................................................................293
Przypadki u*ycia.......................................................................................................293
Analiza aplikacji .......................................................................................................303
Analiza systemów.....................................................................................................304
[ Pobierz całość w formacie PDF ]