C_17_STL_Receptury_cpp17r.pdf

(955 KB) Pobierz
Tytuł oryginału: C++17 STL Cookbook
Tłumaczenie: Robert Górczyński
ISBN: 978-83-283-4501-0
Copyright © Packt Publishing 2017. First published in the English language
under the title ‘C++17 STL Cookbook – (9781787120495)’
Polish edition copyright © 2018 by Helion SA
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/cpp17r
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis tre ci
O autorze
O redaktorze merytorycznym
Wprowadzenie
13
14
15
Rozdzia 1. Nowe funkcje w C++17
Wprowadzenie
U ycie strukturalnych wi za do rozpakowania warto ci zwrotnej
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Ograniczanie zasi gu zmiennej do konstrukcji if i switch
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Zalety stosowania nowych regu inicjalizacji z u yciem sk adni opartej na nawiasach
Jak to zrobi ?
Jak to dzia a?
Umo liwienie konstruktorowi automatycznego okre lenia typu klasy szablonu
Jak to zrobi ?
Jak to dzia a?
Co dalej?
U ycie wyra enia constexpr-if do uproszczenia decyzji podejmowanych podczas kompilacji
Jak to zrobi ?
Jak to dzia a?
Co dalej?
W czenie bibliotek w postaci samych nag ówków z u yciem osadzonych zmiennych
Jak to zrobi ?
Jak to dzia a?
Co dalej?
21
21
22
22
24
24
26
26
27
28
29
29
30
31
31
31
32
33
34
35
36
37
37
38
39
Kup książkę
Poleć książkę
Spis tre ci
Implementowanie za pomoc wyra e fold przydatnych funkcji pomocniczych
Jak to zrobi ?
Jak to dzia a?
Co dalej?
40
40
41
41
Rozdzia 2. Kontenery STL
Wprowadzenie
Magazyn danych znajduj cych si obok siebie
Magazyn danych w postaci listy
Drzewo wyszukiwania
Tabela warto ci hash
Adapter kontenera
U ycie stylu usu – wyma w kontenerze std::vector
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Usuwanie w czasie O(1) elementów z nieposortowanego kontenera std::vector
Jak to zrobi ?
Jak to dzia a?
Uzyskanie bezpiecznego dost pu do egzemplarzy std::vector
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Sortowanie egzemplarzy std::vector
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Efektywne i warunkowe wstawianie elementów do kontenera std::map
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Stosowanie nowej semantyki podpowiedzi podczas wstawiania elementów za pomoc
std::map::insert
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Efektywne modyfikowanie kluczy elementów std::map
Jak to zrobi ?
Jak to dzia a?
Co dalej?
U ycie kontenera std::unordered_map z niestandardowymi typami danych
Jak to zrobi ?
Jak to dzia a?
Filtrowanie duplikatów w danych wej ciowych u ytkownika
i wy wietlanie ich w kolejno ci alfabetycznej za pomoc kontenera std::set
Jak to zrobi ?
Jak to dzia a?
47
48
48
49
49
50
50
50
51
52
54
54
55
57
58
58
59
60
60
60
62
62
63
63
65
66
66
66
68
68
69
70
72
72
73
73
75
76
76
77
4
Kup książkę
Poleć książkę
Spis tre ci
Implementowanie za pomoc kontenera std::stack prostego kalkulatora RPN
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Implementowanie za pomoc kontenera std::map licznika cz stotliwo ci wyst powania s ów
Jak to zrobi ?
Jak to dzia a?
Implementowanie za pomoc kontenera std::set narz dzia pomocniczego
przeznaczonego do wyszukiwania bardzo d ugich zda w tek cie
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Implementowanie za pomoc kontenera std::priority_queue listy rzeczy do zrobienia
Jak to zrobi ?
Jak to dzia a?
79
80
82
84
85
85
87
88
89
91
92
93
93
95
Rozdzia 3. Iteratory
Wprowadzenie
Kategorie iteratorów
Tworzenie w asnego zakresu, który mo na iterowa
Jak to zrobi ?
Jak to dzia a?
Tworzenie w asnych iteratorów zgodnych z kategoriami iteratora STL
Jak to zrobi ?
Jak to dzia a?
Co dalej?
U ycie adapterów iteratora do wype niania ogólnych struktur danych
Jak to zrobi ?
Jak to dzia a?
Implementowanie algorytmów w kategoriach iteratorów
Jak to zrobi ?
Co dalej?
Iteracja w drug stron za pomoc adaptera iteratora odwrotnego
Jak to zrobi ?
Jak to dzia a?
Zako czenie dzia ania iteratora w zakresie za pomoc wartownika iteratora
Jak to zrobi ?
Automatyczne sprawdzanie kodu iteratora
Jak to zrobi ?
Jak to dzia a?
Co dalej?
Tworzenie w asnego adaptera iteratora czenia na zak adk
Jak to zrobi ?
Co dalej?
97
97
99
101
101
103
104
104
106
107
107
107
109
110
111
113
114
114
115
116
117
119
119
122
123
123
125
128
5
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin