Przejdź do głównej treści
eLearner.app

Interaktywny kurs

Kurs C++

Ucz się nowoczesnego C++ od podstaw dzięki prowadzonym ćwiczeniom, statycznej walidacji i integracji z Compiler Explorer: od podstaw składni i typów danych po klasy i programowanie obiektowe.

Statyczna weryfikacja za pomocą słów kluczowych + wykonanie w Compiler Explorer (jedno kliknięcie do skopiowania kodu + otwarcie).

01 · Moduł 1 — Podstawy C++

3 lekcji

Fundamenty: zmienne, proste typy danych, operatory arytmetyczno-logiczne i podstawowa obsługa wejścia/wyjścia za pomocą std::cout i std::cin.

  1. 1.1Zmienne i typy danychTypy proste (int, double, char, bool) i obiekty złożone (std::string). Deklaracja, inicjalizacja i zakres zmiennych.~10 min
  2. 1.2OperatorenOperatory arytmetyczne, relacyjne, logiczne i przypisania. Priorytety i wyrażenia.~8 min
  3. 1.3Wejście/Wyjście i strumienieStandardowe strumienie z biblioteki iostream: wysyłanie danych wyjściowych za pomocą std::cout i odczytywanie wejściowych za pomocą std::cin.~10 min

02 · Moduł 2 — Kontrola przepływu

3 lekcji

Wyrażenia warunkowe do podejmowania decyzji oraz pętle do powtarzania instrukcji.

  1. 2.1Instrukcje warunkowe (if-else)Kontrolowanie wykonania warunkowego za pomocą konstrukcji if, else if oraz else.~10 min
  2. 2.2PętlePowtarzanie bloków kodu za pomocą pętli for, while oraz do-while.~12 min
  3. 2.3Instrukcja switchObsługa wielu rozgałęzień w uporządkowany sposób w oparciu o stałe wartości całkowite lub znakowe.~8 min

03 · Moduł 3 — Funkcje i Referencje

2 lekcji

Dzielenie kodu na bloki wielokrotnego użytku i zrozumienie, jak C++ przekazuje dane w pamięci.

  1. 3.1Podstawowe funkcjeDeklarowanie i definiowanie funkcji. Parametry wejściowe, typy zwracane i podstawowe wykonanie.~10 min
  2. 3.2Przekazywanie przez wartość i referencjęKopie w pamięci a aliasy z operatorem referencji (&). Modyfikowanie parametrów zewnętrznych.~12 min

04 · Moduł 4 — Programowanie Obiektowe

2 lekcji

Wprowadzenie do klas, enkapsulacji i automatycznego zarządzania zasobami.

  1. 4.1Klasy i ObiektySkładnia class, składowe danych i funkcje składowe. Specyfikatory dostępu public i private do enkapsulacji.~12 min
  2. 4.2Konstruktory i DestruktoryInicjalizowanie stanu obiektu w momencie tworzenia i czyszczenie zasobów przy usuwaniu.~12 min

05 · Moduł 5 — Struktury Danych i Wskaźniki

2 lekcji

Zarządzanie kolekcjami danych i zrozumienie działania pamięci fizycznej za pomocą wskaźników.

  1. 5.1Tablice i WektoryStatyczne tablice w stylu C oraz wektory dynamiczne std::vector. Dodawanie, dostęp i modyfikowanie kolekcji danych.~12 min
  2. 5.2WskaźnikiAdresy pamięci, operator pobierania adresu (&) i dereferencja (*). Użycie nullptr dla bezpieczeństwa.~15 min

06 · Moduł 6 — Dziedziczenie i Polimorfizm

2 lekcji

Rozszerzanie istniejących klas i implementowanie zachowań polimorficznych za pomocą funkcji wirtualnych i dziedziczenia.

  1. 6.1Dziedziczenie w C++Tworzenie hierarchii klas z dziedziczeniem public, zrozumienie specyfikatora protected i wywoływanie konstruktorów klasy bazowej.~12 min
  2. 6.2Polimorfizm i funkcje wirtualneRozwiązywanie metod w czasie wykonywania przy użyciu słowa kluczowego virtual, zrozumienie destruktorów wirtualnych i klas czysto abstrakcyjnych.~15 min

07 · Moduł 7 — Smart Pointers

2 lekcji

Nowoczesne i bezpieczne zarządzanie pamięcią dynamiczną bez wycieków dzięki inteligentnym wskaźnikom z biblioteki standardowej.

  1. 7.1std::unique_ptr i std::shared_ptrZapewnienie wyłącznej własności zasobu za pomocą unique_ptr lub współdzielonej z zliczaniem referencji za pomocą shared_ptr.~12 min
  2. 7.2std::weak_ptrRozwiązywanie cyklicznych zależności i nieposiadających własności referencji związanych z zasobami zarządzanymi przez shared_ptr.~12 min

08 · Moduł 8 — Templates

2 lekcji

Wprowadzenie do programowania generycznego poprzez pisanie funkcji i klas wielokrotnego użytku niezależnych od typów danych.

  1. 8.1Szablony FunkcjiPisanie funkcji generycznych poprzez definiowanie parametrów szablonu typu i zrozumienie dedukcji typów przez kompilator.~12 min
  2. 8.2Szablony KlasImplementowanie generycznych klas i struktur danych parametryzowanych względem typu zawartych danych.~15 min