c++.-podroz-po-jezyku-dla-zaawansowanych.-wydanie-ii cała książka.pdf

(38210 KB) Pobierz
Spis treści
Wstęp
1. Podstawy
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
1.10
Wprowadzenie ...................................................................................................... 11
Programy ................................................................................................................ 12
Funkcje ................................................................................................................... 14
Typy, zmienne i arytmetyka ................................................................................ 15
Zakres i cykl istnienia ........................................................................................... 19
Stałe ......................................................................................................................... 20
Wskaźniki, tablice i referencje ............................................................................ 21
Testy ........................................................................................................................ 24
Mapowanie sprzętowe .......................................................................................... 27
Porady ..................................................................................................................... 29
7
11
2. Typy zdefiniowane przez użytkownika
2.1
2.2
2.3
2.4
2.5
2.6
Wprowadzenie ...................................................................................................... 31
Struktury ................................................................................................................ 32
Klasy ........................................................................................................................ 33
Unie ......................................................................................................................... 35
Wyliczenia ............................................................................................................. 36
Porady ..................................................................................................................... 38
31
Kup książkę
Poleć książkę
4
Spis treści
3. Moduły
3.1
3.2
3.3
3.4
3.5
3.6
3.7
Wprowadzenie ...................................................................................................... 39
Kompilacja rozdzielna ......................................................................................... 40
Moduły (C++20) ................................................................................................... 42
Przestrzenie nazw ................................................................................................. 44
Obsługa błędów ..................................................................................................... 45
Argumenty i wartości zwrotne funkcji .............................................................. 52
Porady ..................................................................................................................... 56
39
4. Klasy
4.1
4.2
4.3
4.4
4.5
4.6
Wprowadzenie ...................................................................................................... 59
Typy konkretne ..................................................................................................... 60
Typy abstrakcyjne ................................................................................................. 66
Funkcje wirtualne ................................................................................................. 69
Hierarchie klas ...................................................................................................... 70
Porady ..................................................................................................................... 76
59
5. Operacje podstawowe
5.1
5.2
5.3
5.4
5.5
Wprowadzenie ...................................................................................................... 79
Kopiowanie i przenoszenie ................................................................................. 82
Zarządzanie zasobami .......................................................................................... 87
Operacje standardowe .......................................................................................... 88
Porady ..................................................................................................................... 92
79
6. Szablony
6.1
6.2
6.3
6.4
6.5
Wprowadzenie ...................................................................................................... 93
Typy parametryzowane ....................................................................................... 94
Operacje parametryzowane ................................................................................. 98
Mechanizmy szablonów ....................................................................................103
Porady ...................................................................................................................106
93
7. Koncepcje i programowanie generyczne
7.1
7.2
7.3
7.4
7.5
7.6
Wprowadzenie ....................................................................................................107
Koncepcje (C++20) ............................................................................................108
Programowanie generyczne ..............................................................................113
Szablony zmienne ...............................................................................................116
Model kompilacji szablonów ............................................................................119
Porady ...................................................................................................................120
107
8. Podstawowe informacje o bibliotece
8.1 Wprowadzenie ....................................................................................................121
8.2 Komponenty biblioteki standardowej .............................................................122
121
Kup książkę
Poleć książkę
Spis treści
5
8.3 Nagłówki i przestrzeń nazw biblioteki standardowej ....................................123
8.4 Porady ...................................................................................................................124
9. Łańcuchy i wyrażenia regularne
9.1
9.2
9.3
9.4
9.5
Wprowadzenie ....................................................................................................127
Łańcuchy ..............................................................................................................128
Widoki łańcuchów ..............................................................................................130
Wyrażenia regularne ..........................................................................................132
Porady ...................................................................................................................139
127
10. Wejście i wyjście
10.1
10.2
10.3
10.4
10.5
10.6
10.7
10.8
10.9
10.10
10.11
Wprowadzenie ....................................................................................................141
Wyjście .................................................................................................................142
Wejście .................................................................................................................143
Stan wejścia i wyjścia ..........................................................................................145
Wejście i wyjście typów zdefiniowanych przez użytkownika ......................146
Formatowanie .....................................................................................................147
Strumienie plikowe .............................................................................................148
Strumienie łańcuchowe ......................................................................................149
Wejście i wyjście w stylu języka C ....................................................................150
System plików ......................................................................................................150
Porady ...................................................................................................................154
141
11. Kontenery
11.1
11.2
11.3
11.4
11.5
11.6
11.7
Wprowadzenie ....................................................................................................157
Typ vector ............................................................................................................158
Listy .......................................................................................................................162
Słowniki ................................................................................................................164
Słowniki nieuporządkowane .............................................................................165
Przegląd kontenerów ..........................................................................................167
Porady ...................................................................................................................169
157
12. Algorytmy
12.1
12.2
12.3
12.4
12.5
12.6
12.7
12.8
12.9
12.10
Wprowadzenie ....................................................................................................171
Zastosowania iteratorów ....................................................................................173
Typy iteratorów ...................................................................................................175
Iteratory strumieni .............................................................................................176
Predykaty .............................................................................................................178
Przegląd algorytmów ..........................................................................................178
Koncepcje (C++20) ............................................................................................179
Algorytmy kontenerów ......................................................................................183
Algorytmy równoległe .......................................................................................184
Porady ...................................................................................................................185
171
Kup książkę
Poleć książkę
6
Spis treści
13. Narzędzia pomocnicze
13.1
13.2
13.3
13.4
13.5
13.6
13.7
13.8
13.9
13.10
Wprowadzenie ....................................................................................................187
Zarządzanie zasobami ........................................................................................188
Sprawdzanie zakresu — gsl::span .....................................................................193
Kontenery specjalne ...........................................................................................194
Alternatywy .........................................................................................................199
Alokatory .............................................................................................................203
Czas .......................................................................................................................204
Adaptacja funkcji ................................................................................................205
Funkcje typów .....................................................................................................206
Porady ................................................................................................................... 210
187
14. Liczby
14.1
14.2
14.3
14.4
14.5
14.6
14.7
14.8
Wprowadzenie ....................................................................................................213
Funkcje matematyczne ......................................................................................214
Algorytmy numeryczne .....................................................................................215
Liczby zespolone .................................................................................................216
Liczby losowe .......................................................................................................217
Arytmetyka wektorowa ......................................................................................219
Granice numeryczne ..........................................................................................219
Porady ...................................................................................................................220
213
15. Współbieżność
15.1
15.2
15.3
15.4
15.5
15.6
15.7
15.8
Wprowadzenie ....................................................................................................221
Zadania i wątki ....................................................................................................222
Przekazywanie argumentów .............................................................................223
Zwracanie wyników ............................................................................................224
Wspólne używanie danych ................................................................................225
Oczekiwanie na zdarzenia .................................................................................227
Komunikacja między zadaniami ......................................................................228
Porady ...................................................................................................................232
221
16. Historia i zgodność
16.1
16.2
16.3
16.4
16.5
Historia .................................................................................................................235
Ewolucja funkcjonalności C++ .........................................................................244
Zgodność C i C++ ...............................................................................................248
Bibliografia ...........................................................................................................252
Porady ...................................................................................................................255
235
Indeks
Skorowidz
257
259
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin