C++. Podróż po języku dla zaawansowanych w.2

34,19 

Opis

C++. Podróż po języku dla zaawansowanych w.2

Żadnego programisty nie trzeba przekonywać o zaletach C++. To język dojrzały, wszechstronny, pozwalający uzyskiwać maksymalną wydajność kodu. Do tego wciąż konsekwentnie rozwijany – współczesny C++ wygląda zupełnie inaczej niż dwadzieścia lat temu. Oznacza to, że profesjonalny programista, który chce w pełni wykorzystać zalety nowoczesnego C++, musi bardzo dobrze orientować się w nowościach przynoszonych przez kolejne specyfikacje języka. Warto również wiedzieć, jak zmieniają się dostępne narzędzia językowe i biblioteki, a także które paradygmaty programowania są przez nie wspierane i w jakim zakresie.Ta książka jest idealnym wyborem dla programisty C lub C++, który chce lepiej zapoznać się z nowościami w języku C++. Jest to zwięzły i dokładny przewodnik po najważniejszych elementach języka i komponentach biblioteki standardowej z uwzględnieniem niedawno wprowadzonych udoskonaleń i udogodnień. Znalazły się tu również liczne przykłady i praktyczne wskazówki, które szczególnie istotne okażą się w kontekście paradygmatów programowania, takich jak programowanie generyczne i zorientowane obiektowo. Poza dość podstawowymi zagadnieniami omówiono tu tematykę semantyki przenoszenia, jednolitej inicjalizacji, wyrażeń lambda, kontenerów i współbieżności. Książka kończy się interesującym opisem projektu i ewolucji języka C++.Najciekawsze zagadnienia:podstawy działania kodu C++operacje standardowe oraz operacje wejścia-wyjściaszablony, w tym szablony funkcji i szablony zmiennealgorytmy w C++ i narzędzia pomocniczezadania, wątki, komunikacja między procesaminiektóre nowości planowane dla przyszłych implementacji C++Na pewno znasz C++. Ale czy sprawnie się nim posługujesz?Spis treści:Wstęp 71. Podstawy 111.1. Wprowadzenie 111.2. Programy 121.3. Funkcje 141.4. Typy, zmienne i arytmetyka 151.5. Zakres i cykl istnienia 191.6. Stałe 201.7. Wskaźniki, tablice i referencje 211.8. Testy 241.9. Mapowanie sprzętowe 271.10. Porady 292. Typy zdefiniowane przez użytkownika 312.1. Wprowadzenie 312.2. Struktury 322.3. Klasy 332.4. Unie 352.5. Wyliczenia 362.6. Porady 383. Moduły 393.1. Wprowadzenie 393.2. Kompilacja rozdzielna 403.3. Moduły (C++20) 423.4. Przestrzenie nazw 443.5. Obsługa błędów 453.6. Argumenty i wartości zwrotne funkcji 523.7. Porady 564. Klasy 594.1. Wprowadzenie 594.2. Typy konkretne 604.3. Typy abstrakcyjne 664.4. Funkcje wirtualne 694.5. Hierarchie klas 704.6. Porady 765. Operacje podstawowe 795.1. Wprowadzenie 795.2. Kopiowanie i przenoszenie 825.3. Zarządzanie zasobami 875.4. Operacje standardowe 885.5. Porady 926. Szablony 936.1. Wprowadzenie 936.2. Typy parametryzowane 946.3. Operacje parametryzowane 986.4. Mechanizmy szablonów 1036.5. Porady 1067. Koncepcje i programowanie generyczne 1077.1. Wprowadzenie 1077.2. Koncepcje (C++20) 1087.3. Programowanie generyczne 1137.4. Szablony zmienne 1167.5. Model kompilacji szablonów 1197.6. Porady 1208. Podstawowe informacje o bibliotece 1218.1. Wprowadzenie 1218.2. Komponenty biblioteki standardowej 1228.3. Nagłówki i przestrzeń nazw biblioteki standardowej 1238.4. Porady 1249. Łańcuchy i wyrażenia regularne 1279.1. Wprowadzenie 1279.2. Łańcuchy 1289.3. Widoki łańcuchów 1309.4. Wyrażenia regularne 1329.5. Porady 13910. Wejście i wyjście 14110.1. Wprowadzenie 14110.2. Wyjście 14210.3. Wejście 14310.4. Stan wejścia i wyjścia 14510.5. Wejście i wyjście typów zdefiniowanych przez użytkownika 14610.6. Formatowanie 14710.7. Strumienie plikowe 14810.8. Strumienie łańcuchowe 14910.9. Wejście i wyjście w stylu języka C 15010.10. System plików 15010.11. Porady 15411. Kontenery 15711.1. Wprowadzenie 15711.2. Typ vector 15811.3. Listy 16211.4. Słowniki 16411.5. Słowniki nieuporządkowane 16511.6. Przegląd kontenerów 16711.7. Porady 16912. Algorytmy 17112.1. Wprowadzenie 17112.2. Zastosowania iteratorów 17312.3. Typy iteratorów 17512.4. Iteratory strumieni 17612.5. Predykaty 17812.6. Przegląd algorytmów 17812.7. Koncepcje (C++20) 17912.8. Algorytmy kontenerów 18312.9. Algorytmy równoległe 18412.10. Porady 18513. Narzędzia pomocnicze 18713.1. Wprowadzenie 18713.2. Zarządzanie zasobami 18813.3. Sprawdzanie zakresu – gsl::span 19313.4. Kontenery specjalne 19413.5. Alternatywy 19913.6. Alokatory 20313.7. Czas 20413.8. Adaptacja funkcji 20513.9. Funkcje typów 20613.10. Porady 21014. Liczby 21314.1. Wprowadzenie 21314.2. Funkcje matematyczne 21414.3. Algorytmy numeryczne 21514.4. Liczby zespolone 21614.5. Liczby losowe 21714.6. Arytmetyka wektorowa 21914.7. Granice numeryczne 21914.8. Porady 22015. Współbieżność 22115.1. Wprowadzenie 22115.2. Zadania i wątki 22215.3. Przekazywanie argumentów 22315.4. Zwracanie wyników 22415.5. Wspólne używanie danych 22515.6. Oczekiwanie na zdarzenia 22715.7. Komunikacja między zadaniami 22815.8. Porady 23216. Historia i zgodność 23516.1. Historia 23516.2. Ewolucja funkcjonalności C++ 24416.3. Zgodność C i C++ 24816.4. Bibliografia 25216.5. Porady 255Indeks 257Skorowidz 259O autorze: Dr Bjarne Stroustrup może mówić o sobie, że jest ojcem C++: zaprojektował go i jako pierwszy zaimplementował. Jest dyrektorem działu technologicznego banku Morgan Stanley w Nowym Jorku i profesorem wizytującym w Columbia University. Wcześniej pracował w Bell Labs, AT&T Labs oraz Texas A&M University. Otrzymał wiele wyróżnień, w tym przyznawaną przez National Academy of Engineering Nagrodę Charlesa Starka Drapera. Jest członkiem National Academy of Engineering, Institute of Electrical and Electronics Engineers (IEEE) oraz Association for Computing Machinery (ACM).

Informatyka

ksiazka historia, tokaji aszu 3 puttonyos, józef nyka tatry polskie, mazaki suchościeralne

yyyyy