C++. Podróż po języku dla zaawansowanych - ebook
C++. Podróż po języku dla zaawansowanych - ebook
C++ zmienił się nie do poznania: jest nowocześniejszy, bardziej precyzyjny, pozwala też na pisanie zwięzłego i efektywnego kodu. Programista ma dokładniejszą kontrolę nad działaniem programu, co przekłada się na szybkość pracy i lepsze wykorzystywanie zasobów sprzętowych. Dodatkowo ekosystem C++ oferuje mnóstwo bibliotek, narzędzi czy środowisk programistycznych. Aby jednak pisać w nim dobry kod, trzeba sprawnie poruszać się po świecie C++.
To drugie wydanie zwięzłego przewodnika po C++ dla doświadczonych programistów, zaktualizowane do standardu C++20. Dzięki niemu zaznajomisz się z najważniejszymi elementami języka i biblioteki standardowej, koniecznymi do efektywnej pracy w takich stylach programowania jak programowanie zorientowane obiektowo czy generyczne. W tym wydaniu opisano wiele nowych elementów dodanych w C++20, w tym moduły, koncepcje, współprocedury i zakresy. Omówiono też wybrane komponenty biblioteki, które pojawią się dopiero w standardzie C++23.
Jeśli jesteś programistą C lub C++ i zależy Ci, by lepiej poznać najnowsze możliwości języka C++, albo biegle posługujesz się innym językiem programowania i chcesz ogólnie zaznajomić się z zaletami nowoczesnego C++ ... nie znajdziesz bardziej zwięzłego i prostszego przewodnika niż ten.
W książce między innymi:
- nowe możliwości języka w standardzie C++20
- moduły, klasy i obsługa błędów
- operacje, zarządzanie zasobami i wejście-wyjście
- generatory, potoki, kontenery
- współbieżność i wielozadaniowość
Oto nowoczesny C++: poznaj jego ukryte możliwości!
Spis treści
Wstęp
1. Podstawy
- 1.1 Wprowadzenie
- 1.2 Programy
- 1.3 Funkcje
- 1.4 Typy, zmienne i arytmetyka
- 1.5 Zakres i cykl istnienia
- 1.6 Stałe
- 1.7 Wskaźniki, tablice i referencje
- 1.8 Testy
- 1.9 Mapowanie sprzętowe
- 1.10 Porady
2. Typy zdefiniowane przez użytkownika
- 2.1 Wprowadzenie
- 2.2 Struktury
- 2.3 Klasy
- 2.4 Wyliczenia
- 2.5 Unie
- 2.6 Porady
3. Moduły
- 3.1 Wprowadzenie
- 3.2 Kompilacja rozdzielna
- 3.3 Przestrzenie nazw
- 3.4 Argumenty i wartości zwrotne funkcji
- 3.5 Porady
4. Obsługa błędów
- 4.1 Wprowadzenie
- 4.2 Wyjątki
- 4.3 Niezmienniki
- 4.4 Różne sposoby obsługi błędów
- 4.5 Asercje
- 4.6 Porady
5. Klasy
- 5.1 Wprowadzenie
- 5.2 Typy konkretne
- 5.3 Typy abstrakcyjne
- 5.4 Funkcje wirtualne
- 5.5 Hierarchie klas
- 5.6 Porady
6. Operacje podstawowe
- 6.1 Wprowadzenie
- 6.2 Kopiowanie i przenoszenie
- 6.3 Zarządzanie zasobami
- 6.4 Przeciążanie operatorów
- 6.5 Operacje standardowe
- 6.6 Literały zdefiniowane przez użytkownika
- 6.7 Porady
7. Szablony
- 7.1 Wprowadzenie
- 7.2 Typy parametryzowane
- 7.3 Operacje parametryzowane
- 7.4 Mechanizmy szablonów
- 7.5 Porady
8. Koncepcje i programowanie generyczne
- 8.1 Wprowadznie
- 8.2 Koncepcje
- 8.3 Programowanie generyczne
- 8.4 Szablony zmienne
- 8.5 Model kompilacji szablonów
- 8.6 Porady
9. Podstawowe informacje o bibliotece
- 9.1 Wprowadzenie
- 9.2 Komponenty biblioteki standardowej
- 9.3 Organizacja biblioteki standardowej
- 9.4 Porady
10. Łańcuchy i wyrażenia regularne
- 10.1 Wprowadzenie
- 10.2 Łańcuchy
- 10.3 Widoki łańcuchów
- 10.4 Wyrażenia regularne
- 10.5 Porady
11. Wejście i wyjście
- 11.1 Wprowadzenie
- 11.2 Wyjście
- 11.3 Wejście
- 11.4 Stan wejścia i wyjścia
- 11.5 Wejście i wyjście typów zdefiniowanych przez użytkownika
- 11.6 Formatowanie wyjścia
- 11.7 Strumienie
- 11.8 Wejście i wyjście w stylu języka C
- 11.9 System plików
- 11.10 Porady
12. Kontenery
- 12.1 Wprowadzenie
- 12.2 Typ vector
- 12.3 Listy
- 12.4 forward_list
- 12.5 Słowniki
- 12.6 Słowniki nieuporządkowane
- 12.7 Alokatory
- 12.8 Przegląd kontenerów
- 12.9 Porady
13. Algorytmy
- 13.1 Wprowadzenie
- 13.2 Zastosowania iteratorów
- 13.3 Typy iteratorów
- 13.4 Predykaty
- 13.5 Przegląd algorytmów
- 13.6 Algorytmy równoległe
- 13.7 Porady
14. Zakresy
- 14.1 Wprowadzenie
- 14.2 Widoki
- 14.3 Generatory
- 14.4 Potoki
- 14.5 Koncepcje - informacje ogólne
- 14.6 Porady
15. Wskaźniki i kontenery
- 15.1 Wprowadzenie
- 15.2 Wskaźniki
- 15.3 Kontenery
- 15.4 Alternatywy
- 15.5 Porady
16. Narzędzia pomocnicze
- 16.1 Wprowadzenie
- 16.2 Czas
- 16.3 Adaptacja funkcji
- 16.4 Funkcje typów
- 16.5 source_location
- 16.6 move() i forward()
- 16.7 Manipulowanie bitami
- 16.8 Zamykanie programu
- 16.9 Porady
17. Liczby
- 17.1 Wprowadzenie
- 17.2 Funkcje matematyczne
- 17.3 Algorytmy numeryczne
- 17.4 Liczby zespolone
- 17.5 Liczby losowe
- 17.6 Arytmetyka wektorowa
- 17.7 Granice numeryczne
- 17.8 Aliasy typów
- 17.9 Stałe matematyczne
- 17.10 Porady
18. Współbieżność
- 18.1 Wprowadzenie
- 18.2 Zadania i wątki
- 18.3 Wspólne używanie danych
- 18.4 Oczekiwanie na zdarzenia
- 18.5 Komunikacja między zadaniami
- 18.6 Współprocedury
- 18.7 Porady
19. Historia i zgodność
- 19.1 Historia
- 19.2 Ewolucja funkcjonalności C++
- 19.3 Zgodność C i C++
- 19.4 Bibliografia
- 19.5 Porady
A. Moduł std
- A.1 Wprowadzenie
- A.2 Używaj tego, co masz w implementacji
- A.3 Używaj nagłówków
- A.4 Stwórz własny moduł std
- A.5 Porady
Skorowidz
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-8322-526-5 |
Rozmiar pliku: | 3,0 MB |