E-book details

C++20. Laboratorium

C++20. Laboratorium

Dawid Farbaniec

Ebook

Wydajny i niezależny od platformy język wysokopoziomowy? To C++!

  • Poznaj konstrukcje składniowe języka C++
  • Naucz się je stosować w praktyce
  • Napisz swoje pierwsze programy

Programowanie to w dużym uproszczeniu wydawanie komputerowi odpowiednich poleceń. Aby jednak móc to robić, trzeba opanować trudną sztukę komunikacji z maszyną, co w praktyce sprowadza się do posługiwania się zrozumiałym dla niej językiem. Obecnie niemal nikt nie musi się już uczyć języków niskopoziomowych, które są minimalistyczne i niezawodne, ale trudne do nauki i zastosowania w przypadku złożonych projektów. Z pomocą przychodzą tu języki wysokopoziomowe, a zwłaszcza łączący dużą wydajność z potężnymi możliwościami C++.

Jeśli chcesz go poznać lub odświeżyć swoją wiedzę, rusz w drogę z tym przewodnikiem! Odbędziesz dzięki niemu podróż po składni C++, zapoznasz się z jego instrukcjami i nauczysz się czytać kod. Dowiesz się, jak stosować podstawowe i złożone typy danych, odkryjesz sposoby użycia pętli, wkroczysz w świat funkcji i programowania obiektowego, a także opanujesz sztukę obsługi wyjątków. Poznasz też najważniejsze elementy standardu C++20, takie jak wymagania nazwane (ang. concepts), koprocedury (ang. coroutines), trójdrożny operator porównania <=> (tzw. statek kosmiczny), atrybuty [[nodiscard]] z komunikatem, [[likely]] i [[unlikely]], a także typ znakowy char8_t.

Prosto do celu i na praktycznych przykładach - z tą książką szybko rozgryziesz język, dzięki któremu kariera w IT stanie przed Tobą otworem. Nie zwlekaj, chwyć C++ za rogi!

  • Podstawy algorytmiki
  • Składnia i konstrukcje języka C++
  • Budowanie i uruchamianie projektów
  • Typy podstawowe i złożone
  • Rzutowanie i konwersja typów
  • Instrukcje warunkowe i pętle
  • Operatory i funkcje
  • Tablice i wskaźniki
  • Klasy i obiekty
  • Obsługa wyjątków
  • Zastosowanie szablonów
  • Aplikacje WinRT

Naucz się programować jak prawdziwy haker!

  • Słowem wstępu (11)

CZĘŚĆ 1. WPROWADZENIE

  • Rozdział 1. Schemat blokowy i pseudokod (15)
    • 1.1. Infekcja plików przez wirusy komputerowe (15)
  • Rozdział 2. Kod źródłowy programu i kompilacja (19)

CZĘŚĆ 2. C++, CZYLI POZNAJ JĘZYK HAKERÓW

  • Rozdział 3. NOT-A-VIRUS.Viral. Hello.MSVC++ (23)
  • Rozdział 4. Budowanie i uruchamianie projektu (27)
  • Rozdział 5. Komentarze w języku C++ (38)
  • Rozdział 6. Typy danych, zmienne i stałe (40)
    • 6.1. Zmienne (41)
    • 6.2. Stałe (45)
    • 6.3. Zakresy zmiennych (46)
  • Rozdział 7. Typy podstawowe (50)
    • 7.1. Inicjalizacja (50)
    • 7.2. Typy całkowitoliczbowe (52)
    • 7.3. Typy zmiennoprzecinkowe (56)
    • 7.4. Typy znakowe (59)
    • 7.5. Typ logiczny (62)
    • 7.6. Typ wyliczeniowy (63)
    • 7.7. Typ void (65)
  • Rozdział 8. Definiowanie własnych nazw typów (66)
  • Rozdział 9. Dedukcja typu (68)
  • Rozdział 10. Rzutowanie i konwersja typów (71)
    • 10.1. static_cast (75)
    • 10.2. const_cast (76)
    • 10.3. dynamic_cast (78)
    • 10.4. reinterpret_cast (79)
  • Rozdział 11. Napisy (82)
    • 11.1. Surowe napisy (85)
  • Rozdział 12. Struktury (86)
    • 12.1. Pola bitowe (89)
  • Rozdział 13. Unie (91)
  • Rozdział 14. Instrukcje sterujące przepływem (94)
    • 14.1. Instrukcja warunkowa if (94)
    • 14.2. Instrukcja warunkowa switch (99)
    • 14.3. Grupowanie warunków (101)
  • Rozdział 15. Pętle (104)
    • 15.1. Instrukcja for (104)
    • 15.2. Instrukcja while (107)
    • 15.3. Instrukcja do-while (110)
    • 15.4. Instrukcje break i continue (111)
    • 15.5. Instrukcja goto (112)
  • Rozdział 16. Operatory (115)
    • 16.1. Operatory logiczne i bitowe (117)
    • 16.2. Inkrementacja i dekrementacja (119)
    • 16.3. Operator ternarny (121)
    • 16.4. Priorytety operatorów (122)
    • 16.5. Przeciążanie operatorów (127)
  • Rozdział 17. Tablice i wskaźniki (130)
    • 17.1. Tablice w stylu języka C (130)
    • 17.2. Kontener std::array (132)
    • 17.3. Wskaźniki do tablic (134)
    • 17.4. Wskaźniki void oraz nullptr (137)
    • 17.5. Referencje (odwołania) (138)
    • 17.6. Inteligentne wskaźniki (142)
  • Rozdział 18. Funkcje (150)
    • 18.1. Definiowanie funkcji (151)
    • 18.2. Argumenty i zwracanie wartości (157)
    • 18.3. Argumenty domyślne (164)
    • 18.4. Przeciążanie funkcji (167)
    • 18.5. Funkcje i zmienne inline (168)
    • 18.6. Wskaźnik na funkcję (173)
    • 18.7. Funkcje ze zmienną liczbą argumentów (177)
    • 18.8. Wyrażenia lambda (180)
    • 18.9. Koprocedury (ang. coroutines) (183)
  • Rozdział 19. Klasy i obiekty (188)
    • 19.1. Klasy i obiekty (189)
    • 19.2. Operator dostępu (191)
    • 19.3. Modyfikatory dostępu (193)
    • 19.4. Słowo kluczowe this (195)
    • 19.5. Składowe statyczne (196)
    • 19.6. Konstruktor i destruktor (198)
    • 19.7. Klasy pochodne i zagnieżdżone (204)
    • 19.8. Elementy stałe, zmienne i ulotne (208)
    • 19.9. Jawne usuwanie funkcji (209)
    • 19.10. Przeciążanie operatorów w klasach oraz trójdrożny operator porównania (<=>) (210)
    • 19.11. Przyjaciele (213)
    • 19.12. Funkcje wirtualne (213)
    • 19.13. Klasy abstrakcyjne (217)
  • Rozdział 20. Przestrzenie nazw (220)
    • 20.1. Tworzenie przestrzeni nazw (220)
    • 20.2. Dyrektywa using (222)
    • 20.3. Aliasy przestrzeni nazw (223)
  • Rozdział 21. Szablony (224)
    • 21.1. Szablony zmiennych (224)
    • 21.2. Szablony klas (226)
    • 21.3. Szablony funkcji (229)
    • 21.4. Szablony w wyrażeniach lambda (229)
    • 21.5. Wymagania nazwane (słowo kluczowe "concept") (229)
  • Rozdział 22. Obsługa wyjątków (236)
    • 22.1. Blok try-catch (236)
    • 22.2. Rzucanie wyjątku (238)

CZĘŚĆ 3. PRZYKŁADOWA APLIKACJA W C++/WINRT DLA UNIVERSAL WINDOWS PLATFORM

  • Rozdział 23. Witaj, świecie C++/WinRT! (243)
    • 23.1. MainPage.xaml (244)
    • 23.2. MainPage.cpp (246)
    • 23.3. Uruchomienie rozwiązania (248)
  • Rozdział 24. Nauka C++, co dalej? (251)

DODATKI

  • Dodatek 1. Visual Studio - wybór wersji standardu ISO języka C++ dla projektu (255)
  • Dodatek 2. Definicja czy deklaracja? (C++) (257)
  • Dodatek 3. Gra komputerowa (259)

  • Bibliografia (260)
  • Title: C++20. Laboratorium
  • Author: Dawid Farbaniec
  • ISBN: 978-83-283-9274-8, 9788328392748
  • Date of issue: 2022-03-15
  • Format: Ebook
  • Item ID: cpp20l
  • Publisher: Helion