STL w praktyce. 50 sposobów efektywnego wykorzystania
- Autor:
- Scott Meyers
- Ocena:
- 6.0/6 Opinie: 1
- Stron:
- 296
- Druk:
- oprawa miękka
Opis książki: STL w praktyce. 50 sposobów efektywnego wykorzystania
Standard Template Library to jedno z najpotężniejszych narzędzi programistycznych charakteryzujące się złożonością i wysokim stopniem komplikacji. W książce "STL w praktyce. 50 sposobów efektywnego wykorzystania" -- przeznaczonej dla zaawansowanych i średnio zaawansowanych programistów C++ -- znany ekspert Scott Meyers prezentuje najważniejsze techniki stosowania tego narzędzia. Poza listą zaleceń, jak postępować należy, a jak postępować się nie powinno, Meyers przedstawia wiele poważniejszych aspektów STL pozwalających zrozumieć, dlaczego pewne rozwiązania są poprawne, a innych należy unikać. Do każdej wskazówki dołączony jest kod źródłowy i dokładne objaśnienia, które powinny zainteresować zaawansowanych programistów.
Jeżeli Twoja wiedza ogranicza się do informacji dostępnych w dokumentacji STL, ta książka uzupełni ją o bezcenne wskazówki, które pozwolą Ci wykorzystać STL w praktyce.
Książka przedstawia:- Podstawowe informacje o bibliotece STL i jej zgodności z innymi standardami
- Wskazówki dotyczące poprawnego doboru i używania pojemników
- Opis pojemników typu vector i string
- Omówienie pojemników asocjatywnych
- Metody właściwego korzystania z iteratorów
- Algorytmy wchodzące w skład STL
- Funktory, klasy-funktory i funkcje
- Programowanie za pomocą biblioteki STL
Książkę uzupełniają dodatki, w których znajdziesz między innymi obszerną bibliografię na temat STL oraz cenne wskazówki dla programistów używających kompilatorów firmy Microsoft.
"STL w praktyce. 50 sposobów efektywnego wykorzystania" to nieocenione źródło wiedzy na temat jednego z najważniejszych aspektów programowania w C++. Jeżeli chcesz w praktyce wykorzystać STL, nie obędziesz się bez informacji zawartych w tej książce.
Wybrane bestsellery
-
Do opanowania języków C++11 i C++14 nie wystarcza zapoznanie się z wprowadzonymi w nich funkcjonalnościami (np. deklaracjami typu auto, semantyką operacji move, wyrażeniami lambda i obsługą współbieżności). Sztuką jest nauczenie się korzystania z tych funkcjonalności skutecznie tak,...(0,00 zł najniższa cena z 30 dni)
54.98 zł
79.80 zł(-31%) -
Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively—so that your softwar...
Effective Modern C++. 42 Specific Ways to Improve Your Use of C++11 and C++14 Effective Modern C++. 42 Specific Ways to Improve Your Use of C++11 and C++14
(0,00 zł najniższa cena z 30 dni)203.15 zł
239.00 zł(-15%) -
Książka "C++. 50 efektywnych sposobów na udoskonalenie twoich programów" pozostaje jedną z najważniejszych publikacji dla każdego programisty pracującego z C++.
C++. 50 efektywnych sposobów na udoskonalenie Twoich programów C++. 50 efektywnych sposobów na udoskonalenie Twoich programów
-
Autor tego zbioru zadań jest programistą i nauczycielem. To prawdziwy pasjonat programowania ― w tym w języku C++ ― które traktuje jak przedłużenie ludzkiej mowy. Uważa, że praktycznie na wszystko, co robimy w życiu, można spojrzeć jak na wykonywanie funkcji i algorytmów, które opisuj...(0,00 zł najniższa cena z 30 dni)
22.20 zł
37.00 zł(-40%) -
Ta książka jest drugim, zaktualizowanym i uzupełnionym wydaniem przewodnika dla programistów. Rozpoczyna się od szczegółowego wprowadzenia do nowoczesnego C++ z uwzględnieniem technik eliminowania wąskich gardeł w kodzie bazowym. Następnie omówiono zagadnienia optymalizacji struktur danych i zarz...
Wysoce wydajny C++. Opanuj sztukę optymalizowania działania kodu. Wydanie II Wysoce wydajny C++. Opanuj sztukę optymalizowania działania kodu. Wydanie II
(0,00 zł najniższa cena z 30 dni)71.40 zł
119.00 zł(-40%) -
Autor tej książki — wybitny specjalista pracujący nad wieloma znaczącymi projektami we francuskich, niemieckich i włoskich instytutach fizyki jądrowej, znany czytelnikom m.in. z genialnej Symfonii C++ — postawił sobie za cel napisanie nowej, przekrojowej książki o tym języku, która w ...
Opus magnum C++11. Programowanie w języku C++. Wydanie II poprawione (komplet) Opus magnum C++11. Programowanie w języku C++. Wydanie II poprawione (komplet)
(0,00 zł najniższa cena z 30 dni)119.40 zł
199.00 zł(-40%) -
Dzięki tej książce poznasz narzędzia i rozwiązania, które ułatwiają projektowanie w języku C++ nawet najbardziej skomplikowanych aplikacji. Autorzy przybliżają samo pojęcie architektury oprogramowania i na praktycznych przykładach wyjaśniają, na czym polega jej tworzenie. Pokazują również aktualn...
Architektura oprogramowania bez tajemnic. Wykorzystaj język C++ do tworzenia wydajnych aplikacji i systemów Architektura oprogramowania bez tajemnic. Wykorzystaj język C++ do tworzenia wydajnych aplikacji i systemów
(0,00 zł najniższa cena z 30 dni)59.40 zł
99.00 zł(-40%) -
C++ to bez wątpienia jeden z najpopularniejszych i najpotężniejszych języków programowania. Znajduje zastosowanie w tworzeniu systemów operacyjnych, sterowników przemysłowych, bibliotek, gier komputerowych, najrozmaitszych aplikacji desktopowych, programów bazodanowych i oprogramowania serweroweg...
C++. Zadania z programowania z przykładowymi rozwiązaniami. Wydanie III C++. Zadania z programowania z przykładowymi rozwiązaniami. Wydanie III
(0,00 zł najniższa cena z 30 dni)11.90 zł
39.90 zł(-70%) -
Ta książka jest drugim, zaktualizowanym i uzupełnionym wydaniem doskonałego podręcznika dla profesjonalistów. Szczegółowo opisano w niej wszystkie etapy programowania współbieżnego: od utworzenia wątków po projektowanie wielowątkowych algorytmów i struktur danych. Przedstawiono zastosowania klas ...
Język C++ i przetwarzanie współbieżne w akcji. Wydanie II Język C++ i przetwarzanie współbieżne w akcji. Wydanie II
(0,00 zł najniższa cena z 30 dni)59.40 zł
99.00 zł(-40%) -
Nie pamiętasz jakiegoś algorytmu? Nie wiesz, jaką strukturę danych należy zastosować? Nie masz pojęcia, jak wyznaczyć złożoność obliczeniową algorytmu? Nie martw się, Twoje problemy należą już do przeszłości! Tablice informatyczne. Algorytmy pozwolą Ci szybko odnaleźć i przypomnieć sobie podstawo...(0,00 zł najniższa cena z 30 dni)
8.50 zł
17.00 zł(-50%)
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Recenzje książki: STL w praktyce. 50 sposobów efektywnego wykorzystania (1)
Poniższe recenzje mogły powstać po przekazaniu recenzentowi darmowego egzemplarza poszczególnych utworów bądź innej zachęty do jej napisania np. zapłaty.
-
Dziennik Łódzki PIO; 2 czerwca 2004
Dla programistów STL
Programistów C++, którzy mają do czynienia z biblioteką STL (Standard Template Library), na pewno zainteresuje bardzo praktyczna propozycja Scotta Meyersa – „STL w praktyce. 50 sposobów efektywnego wykorzystania” wydana przez Helion. Opracowanie adresowane jest do zaawansowanych i średnio zaawansowanych programistów. Autor kładzie nacisk nie tylko na praktyczne użycie STL, ale także poprawność zastosowania. Do każdego omówionego przykładu dołączony jest kod źródłowy wraz z dokładnym opisem.
Książka uzupełniona została o cenne dodatki – w nich znaleźć można bibliografię na temat STL czy wskazówki dla programistów używających kompilatorów firmy Microsoft.
Szczegóły książki
- Tytuł oryginału:
- Effective STL 50 Specific Ways to Improve Your Use of the Standard Template Library
- Tłumaczenie:
- Adam Majczak (rozdz. 1-5), Wojciech Moch (rozdz. 6, 7, dod. A-C)
- ISBN Książki drukowanej:
- 83-736-1373-0, 8373613730
- Data wydania książki drukowanej:
- 2004-03-17
- Format:
- B5
- Numer z katalogu:
- 2317
- Zgłoś erratę
- Kategorie:
Programowanie » C++ - Programowanie
Spis treści książki
- Zagadnienie 1. Uważnie dobierajmy kontenery (30)
- Zagadnienie 2. Nie dajmy się zwieść iluzji o istnieniu kodów niezależnych do zastosowanego kontenera (35)
- Zagadnienie 3. Kopiowanie obiektów w kontenerach powinno być "tanie", łatwe i poprawne (40)
- Zagadnienie 4. Stosujmy metodę empty(), zamiast przyrównywać rozmiar size() do zera (43)
- Zagadnienie 5. Preferujmy metody operujące na całych zakresach (podzbiorach), bo są bardziej efektywne niż ich odpowiedniki operujące pojedynczymi elementami (45)
- Zagadnienie 6. Bądźmy wyczuleni i przygotowani na najbardziej kłopotliwą interpretację kompilatora C++ (56)
- Zagadnienie 7. Gdy stosujemy kontenery zawierające wskaźniki zainicjowane za pomocą operatora new, pamiętajmy o zwolnieniu dynamicznej pamięci operatorem delete, zanim zawierający je obiekt-kontener sam zostanie usunięty (59)
- Zagadnienie 8. Nigdy nie twórzmy kontenerów zawierających wskaźniki kategorii auto_ptr (64)
- Zagadnienie 9. Uważnie dobierajmy opcje do operacji kasowania (67)
- Zagadnienie 10. Uważajmy na konwencje dynamicznej alokacji pamięci i stosowne ograniczenia (73)
- Zagadnienie 11. Zrozumienie uprawnionych zastosowań alokatorów pamięci tworzonych przez użytkownika (80)
- Zagadnienie 12. Miejmy umiarkowane i realistyczne oczekiwania odnośnie poziomu bezpieczeństwa wielu wątków obsługiwanych przez kontenery STL (84)
- Zagadnienie 13. Lepiej stosować kontenery vector oraz string niż dynamicznie przydzielać pamięć tablicom (90)
- Zagadnienie 14. Stosujmy metodę reserve, by uniknąć zbędnego przemieszczania elementów w pamięci (93)
- Zagadnienie 15. Bądźmy ostrożni i wyczuleni na zróżnicowanie implementacji kontenerów typu string (96)
- Zagadnienie 16. Powinieneś wiedzieć, jak przesyłać dane z kontenerów vector i string do klasycznego interfejsu zgodnego z C (102)
- Zagadnienie 17. Sztuczka programistyczna "swap trick" pozwalająca na obcięcie nadmiarowej pojemności (106)
- Zagadnienie 18. Unikajmy stosowania wektora typu vector<bool> (108)
- Zagadnienie 19. Ten sam czy taki sam - zrozumienie różnicy pomiędzy relacjami równości a równoważności (112)
- Zagadnienie 20. Określajmy typy porównawcze dla kontenerów asocjacyjnych zawierających wskaźniki (117)
- Zagadnienie 21. Funkcje porównujące powinny dla dwóch dokładnie równych wartości zawsze zwracać wartość false (122)
- Zagadnienie 22. Unikajmy bezpośredniego modyfikowania klucza w kontenerach typu set i multiset (126)
- Zagadnienie 23. Rozważmy zastąpienie kontenerów asocjacyjnych posortowanymi wektorami (133)
- Zagadnienie 24. Gdy efektywność działania jest szczególnie istotna, należy bardzo uważnie dokonywać wyboru pomiędzy map::operator[]() a map::insert() (140)
- Zagadnienie 25. Zapoznaj się z niestandardowymi kontenerami mieszanymi (146)
- Zagadnienie 26. Lepiej wybrać iterator niż const_iterator, reverse_iterator czy const_reverse_iterator (151)
- Zagadnienie 27. Stosujmy funkcje distance() i advance(), by przekształcić typ const_iterator na typ iterator (155)
- Zagadnienie 28. Jak stosować metodę base() należącą do klasy reverse_iterator w celu uzyskania typu iterator? (159)
- Zagadnienie 29. Rozważ zastosowanie iteratorów typu istreambuf_iterator do wczytywania danych znak po znaku (163)
- Zagadnienie 30. Upewnijmy się, że docelowe zakresy są wystarczająco obszerne (166)
- Zagadnienie 31. Pamiętajmy o dostępnych i stosowanych opcjach sortowania (171)
- Zagadnienie 32. Stosujmy metodę erase() w ślad za algorytmami kategorii remove(), jeśli naprawdę chcemy coś skutecznie usunąć z kontenera (177)
- Zagadnienie 33. Przezornie i ostrożnie stosujmy algorytmy kategorii remove() wobec kontenerów zawierających wskaźniki (182)
- Zagadnienie 34. Zwracajmy uwagę, które z algorytmów oczekują posortowanych zakresów (186)
- Zagadnienie 35. Implementujmy zwykłe porównywanie łańcuchów znaków bez rozróżniania wielkości liter za pomocą mismatch() lub lexicographical_compare() (190)
- Zagadnienie 36. Zrozum prawidłową implementację algorytmu copy_if() (196)
- Zagadnienie 37. Stosujmy accumulate() lub for_each() do operacji grupowych na zakresach (198)
- Zagadnienie 38. Projektowanie klas-funktorów do przekazywania przez wartość (205)
- Zagadnienie 39. Predykaty powinny być funkcjami czystymi (208)
- Zagadnienie 40. Klasy-funktory powinny być adaptowalne (212)
- Zagadnienie 41. Po co stosować funkcje ptr_fun, mem_fun i mem_fun_ref? (215)
- Zagadnienie 42. Upewnij się, że less<t>() oznacza operator<() (219)
- Zagadnienie 43. Używaj algorytmów, zamiast pisać pętle (223)
- Zagadnienie 44. Zamiast algorytmów stosujmy metody o takich samych nazwach (231)
- Zagadnienie 45. Rozróżnianie funkcji count(), find(), binary_search(), lower_bound(), upper_bound() i equal_range() (233)
- Zagadnienie 46. Jako parametry algorytmów stosuj funktory, a nie funkcje (241)
- Zagadnienie 47. Unikaj tworzenia kodu "tylko do zapisu" (245)
- Zagadnienie 48. Zawsze dołączaj właściwe pliki nagłówkowe (248)
- Zagadnienie 49. Naucz się odczytywać komunikaty kompilatora związane z biblioteką STL (249)
- Zagadnienie 50. Poznaj strony WWW związane z biblioteką STL (256)
- Książki napisane przeze mnie (263)
- Książki, które nie ja napisałem (choć chciałbym) (264)
- Jak wykonywać porównywanie ciągów znaków bez uwzględniania wielkości liter - artykuł autorstwa Matta Austerna (267)
- Szablony metod w STL (277)
- MSVC wersje 4 do 6 (278)
- Rozwiązania dla kompilatorów MSVC w wersji 4 do 5 (279)
- Dodatkowe rozwiązanie dla kompilatora MSVC w wersji 6. (280)
Podziękowania (9)
Przedmowa (13)
Wprowadzenie (17)
Rozdział 1. Kontenery (29)
Rozdział 2. Kontenery typu vector oraz string (89)
Rozdział 3. Kontenery asocjacyjne (111)
Rozdział 4. Iteratory (151)
Rozdział 5. Algorytmy (165)
Rozdział 6. Funktory, klasy-funktory, funkcje i inne (205)
Rozdział 7. Programowanie za pomocą biblioteki STL (223)
Dodatek A Bibliografia (263)
Dodatek B Porównywanie ciągów znaków bez uwzględniania wielkości liter (267)
Dodatek C Uwagi na temat platformy STL Microsoftu (277)
Skorowidz (283)
Oceny i opinie klientów: STL w praktyce. 50 sposobów efektywnego wykorzystania Scott Meyers (1)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(1)
(0)
(0)
(0)
(0)
(0)
Karol Kuczmarski,
Data dodania: 2005-02-09 Ocena: 6 Opinia potwierdzona zakupem